Diff of the two buildlogs: -- --- b1/build.log 2025-09-09 18:43:41.280212600 +0000 +++ b2/build.log 2025-09-09 18:46:48.972462902 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Mon Oct 12 13:05:20 -12 2026 -I: pbuilder-time-stamp: 1791853520 +I: Current time: Wed Sep 10 08:43:43 +14 2025 +I: pbuilder-time-stamp: 1757443423 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -22,53 +22,85 @@ dpkg-source: info: unpacking golang-github-dop251-goja_0.0~git20250630.0.58d95d8-1.debian.tar.xz I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/2452405/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2370142/tmp/hooks/D01_modify_environment starting +debug: Running on ionos1-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 Sep 9 18:44 /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/2370142/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2370142/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='unstable' - 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=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='3e7456d7842544c2854326f42e405e29' - 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='2452405' - PS1='# ' - PS2='> ' + INVOCATION_ID=675d931880b1406caadbcaa12d294837 + 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=2370142 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.mgRfEcZN/pbuilderrc_UUnx --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.mgRfEcZN/b1 --logfile b1/build.log golang-github-dop251-goja_0.0~git20250630.0.58d95d8-1.dsc' - SUDO_GID='111' - SUDO_HOME='/var/lib/jenkins' - SUDO_UID='106' - 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.mgRfEcZN/pbuilderrc_W8r1 --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.mgRfEcZN/b2 --logfile b2/build.log golang-github-dop251-goja_0.0~git20250630.0.58d95d8-1.dsc' + SUDO_GID=110 + SUDO_HOME=/var/lib/jenkins + SUDO_UID=105 + 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 ionos15-amd64 6.12.43+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.43-1 (2025-08-27) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.12.43+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.43-1 (2025-08-27) 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/2452405/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2370142/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -166,7 +198,7 @@ Get: 42 http://deb.debian.org/debian unstable/main amd64 golang-github-masterminds-semver-dev all 3.2.0-1 [22.2 kB] Get: 43 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-text-dev all 0.22.0-1 [3995 kB] Get: 44 http://deb.debian.org/debian unstable/main amd64 golang-gopkg-yaml.v2-dev all 2.4.2-1 [60.8 kB] -Fetched 66.6 MB in 1s (85.1 MB/s) +Fetched 66.6 MB in 1s (91.1 MB/s) Preconfiguring packages ... Selecting previously unselected package tzdata. (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 ... 19917 files and directories currently installed.) @@ -320,8 +352,8 @@ Setting up tzdata (2025b-5) ... Current default time zone: 'Etc/UTC' -Local time is now: Tue Oct 13 01:06:04 UTC 2026. -Universal Time is now: Tue Oct 13 01:06:04 UTC 2026. +Local time is now: Tue Sep 9 18:44:55 UTC 2025. +Universal Time is now: Tue Sep 9 18:44:55 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20240727.1) ... @@ -368,7 +400,11 @@ fakeroot is already the newest version (1.37.1.2-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/golang-github-dop251-goja-0.0~git20250630.0.58d95d8/ && 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 > ../golang-github-dop251-goja_0.0~git20250630.0.58d95d8-1_source.changes +I: user script /srv/workspace/pbuilder/2370142/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/2370142/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/golang-github-dop251-goja-0.0~git20250630.0.58d95d8/ && 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 > ../golang-github-dop251-goja_0.0~git20250630.0.58d95d8-1_source.changes dpkg-buildpackage: info: source package golang-github-dop251-goja dpkg-buildpackage: info: source version 0.0~git20250630.0.58d95d8-1 dpkg-buildpackage: info: source distribution unstable @@ -386,28 +422,28 @@ dh_autoreconf -O--buildsystem=golang dh_auto_configure -O--buildsystem=golang dh_auto_build -O--buildsystem=golang - cd obj-x86_64-linux-gnu && go install -trimpath -v -p 42 github.com/dop251/goja github.com/dop251/goja/ast github.com/dop251/goja/file github.com/dop251/goja/ftoa github.com/dop251/goja/ftoa/internal/fast github.com/dop251/goja/parser github.com/dop251/goja/token github.com/dop251/goja/unistring -internal/byteorder -internal/goarch -internal/coverage/rtcov -internal/goos -internal/unsafeheader + cd obj-x86_64-linux-gnu && go install -trimpath -v -p 40 github.com/dop251/goja github.com/dop251/goja/ast github.com/dop251/goja/file github.com/dop251/goja/ftoa github.com/dop251/goja/ftoa/internal/fast github.com/dop251/goja/parser github.com/dop251/goja/token github.com/dop251/goja/unistring internal/profilerecord -internal/godebugs -unicode -math/bits +internal/goos cmp -internal/msan -unicode/utf8 unicode/utf16 encoding -internal/runtime/syscall -internal/asan internal/itoa +internal/goarch +internal/byteorder +internal/asan +internal/godebugs +unicode/utf8 +internal/coverage/rtcov +internal/unsafeheader +math/bits +internal/msan internal/cpu +unicode +internal/runtime/atomic +internal/runtime/syscall sync/atomic internal/goexperiment -internal/runtime/atomic internal/runtime/math internal/runtime/sys internal/abi @@ -421,37 +457,37 @@ internal/runtime/maps hash/maphash runtime -iter -internal/reflectlite sync +internal/reflectlite +iter maps slices errors sort -internal/bisect internal/testlog -internal/oserror +internal/bisect io -path +internal/oserror strconv +path syscall internal/godebug -github.com/go-sourcemap/sourcemap/internal/base64vlq -hash bytes strings -golang.org/x/text/internal/tag +github.com/go-sourcemap/sourcemap/internal/base64vlq +hash golang.org/x/text/unicode/rangetable +golang.org/x/text/internal/tag hash/crc32 -math/rand github.com/dop251/goja/token reflect -golang.org/x/text/transform -bufio +math/rand regexp/syntax +bufio +golang.org/x/text/transform internal/syscall/execenv -time internal/syscall/unix +time regexp io/fs internal/poll @@ -460,38 +496,38 @@ internal/fmtsort github.com/dop251/goja/unistring encoding/binary -io/ioutil +encoding/base64 path/filepath +io/ioutil fmt -encoding/base64 +github.com/dlclark/regexp2/syntax +encoding/json net/url go/token github.com/dop251/goja/ftoa/internal/fast compress/flate -github.com/dlclark/regexp2/syntax -golang.org/x/text/internal/language -encoding/json math/big golang.org/x/text/unicode/norm +golang.org/x/text/internal/language go/scanner +go/ast compress/gzip golang.org/x/text/internal/language/compact github.com/google/pprof/profile -go/ast golang.org/x/text/language github.com/dlclark/regexp2 golang.org/x/text/internal golang.org/x/text/internal/colltab -github.com/dop251/goja/ftoa golang.org/x/text/cases +github.com/dop251/goja/ftoa github.com/go-sourcemap/sourcemap github.com/dop251/goja/file -github.com/dop251/goja/ast golang.org/x/text/collate +github.com/dop251/goja/ast github.com/dop251/goja/parser github.com/dop251/goja dh_auto_test -O--buildsystem=golang - cd obj-x86_64-linux-gnu && go test -vet=off -v -p 42 github.com/dop251/goja github.com/dop251/goja/ast github.com/dop251/goja/file github.com/dop251/goja/ftoa github.com/dop251/goja/ftoa/internal/fast github.com/dop251/goja/parser github.com/dop251/goja/token github.com/dop251/goja/unistring + cd obj-x86_64-linux-gnu && go test -vet=off -v -p 40 github.com/dop251/goja github.com/dop251/goja/ast github.com/dop251/goja/file github.com/dop251/goja/ftoa github.com/dop251/goja/ftoa/internal/fast github.com/dop251/goja/parser github.com/dop251/goja/token github.com/dop251/goja/unistring === RUN TestSparseArraySetLengthWithPropItems compiler.go:433: 0: *goja.bindGlobal(&{[a thrown] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(a) @@ -555,9 +591,9 @@ compiler.go:433: 59: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSparseArraySetLengthWithPropItems (0.00s) +--- PASS: TestSparseArraySetLengthWithPropItems (0.01s) === RUN TestSparseArraySwitch ---- PASS: TestSparseArraySwitch (0.05s) +--- PASS: TestSparseArraySwitch (0.23s) === RUN TestSparseArrayOwnKeys compiler.go:433: 0: *goja.bindGlobal(&{[a1 seen count keys] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(a1) @@ -668,7 +704,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArraySparseMaxLength (0.00s) === RUN TestArraySparseExportProps ---- PASS: TestArraySparseExportProps (0.00s) +--- PASS: TestArraySparseExportProps (0.01s) === RUN TestSparseArrayExportToSlice --- PASS: TestSparseArrayExportToSlice (0.00s) === RUN TestArray1 @@ -767,7 +803,7 @@ compiler.go:433: 31: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayDelete (0.00s) +--- PASS: TestArrayDelete (0.01s) === RUN TestArrayDeleteNonexisting compiler.go:433: 0: *goja.bindGlobal(&{[a] [] [] [] false}) compiler.go:433: 1: goja.loadDynamic(Array) @@ -855,12 +891,12 @@ compiler.go:433: 6: goja.loadDynamic(a) compiler.go:433: 7: goja.loadVal({0}) compiler.go:433: 8: goja._newObject({}) - compiler.go:433: 9: *goja.newFunc(&{0xc000021810 get function() {return 42} 0 false}) + compiler.go:433: 9: *goja.newFunc(&{0xc000020b90 get function() {return 42} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({42}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 10: goja.putProp(get) - compiler.go:433: 11: *goja.newFunc(&{0xc000021860 set function(v) {Object.defineProperty(a, "0", {value: v + 1, writable: true, configurable: true})} 1 false}) + compiler.go:433: 11: *goja.newFunc(&{0xc000020c30 set function(v) {Object.defineProperty(a, "0", {value: v + 1, writable: true, configurable: true})} 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja.loadDynamic(Object) compiler.go:433: > 2: goja.getPropCallee(defineProperty) @@ -911,7 +947,7 @@ compiler.go:433: 41: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayReverseNonOptimisable (0.00s) +--- PASS: TestArrayReverseNonOptimisable (0.01s) === RUN TestArrayPushNonOptimisable compiler.go:433: 0: *goja.bindGlobal(&{[a thrown] [] [] [] false}) compiler.go:433: 1: goja.loadDynamic(Object) @@ -1011,7 +1047,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArraySetLengthWithPropItems (0.00s) === RUN TestArrayFrom - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4be0 checkDestHoles function checkDestHoles(dest, prefix) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464320 checkDestHoles function checkDestHoles(dest, prefix) { assert(dest !== source, prefix + ": dest !== source"); assert.sameValue(dest.length, 3, prefix + ": dest.length"); assert.sameValue(dest[0], 1, prefix + ": [0]"); @@ -1084,7 +1120,7 @@ compiler.go:433: > 62: goja._pop({}) compiler.go:433: > 63: goja._loadUndef({}) compiler.go:433: > 64: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d4c30 checkDest function checkDest(dest, prefix) { + compiler.go:433: 1: *goja.newFunc(&{0xc000464370 checkDest function checkDest(dest, prefix) { assert(dest !== source, prefix + ": dest !== source"); assert.sameValue(dest.length, 3, prefix + ": dest.length"); assert.sameValue(dest[0], 1, prefix + ": [0]"); @@ -1146,7 +1182,7 @@ compiler.go:433: > 52: goja._pop({}) compiler.go:433: > 53: goja._loadUndef({}) compiler.go:433: > 54: goja._ret({}) - compiler.go:433: 2: *goja.newFunc(&{0xc0003d4c80 Iter function Iter() { + compiler.go:433: 2: *goja.newFunc(&{0xc0004643c0 Iter function Iter() { this.idx = 0; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1156,11 +1192,11 @@ compiler.go:433: > 4: goja.setPropP(idx) compiler.go:433: > 5: goja._loadUndef({}) compiler.go:433: > 6: goja._ret({}) - compiler.go:433: 3: *goja.newFunc(&{0xc0003d4cd0 A function A() {} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc000464410 A function A() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) - compiler.go:433: 4: *goja.newFunc(&{0xc0003d4d20 T2 function T2() { + compiler.go:433: 4: *goja.newFunc(&{0xc000464460 T2 function T2() { Object.defineProperty(this, 0, { configurable: false, writable: true, @@ -1221,7 +1257,7 @@ compiler.go:433: 39: goja._pop({}) compiler.go:433: 40: goja.loadDynamic(Iter) compiler.go:433: 41: goja.getProp(prototype) - compiler.go:433: 42: *goja.newFunc(&{0xc0003d4d70 function() { + compiler.go:433: 42: *goja.newFunc(&{0xc0004644b0 function() { if (this.idx < source.length) { return {value: source[this.idx++]}; } else { @@ -1263,7 +1299,7 @@ compiler.go:433: 47: goja.loadDynamic(src) compiler.go:433: 48: goja.loadDynamic(Symbol) compiler.go:433: 49: goja.getProp(iterator) - compiler.go:433: 50: *goja.newFunc(&{0xc0003d4dc0 function() { + compiler.go:433: 50: *goja.newFunc(&{0xc000464500 function() { return new Iter(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1327,7 +1363,7 @@ compiler.go:433: 105: goja.loadDynamic(assert) compiler.go:433: 106: goja.getPropCallee(throws) compiler.go:433: 107: goja.loadDynamic(TypeError) - compiler.go:433: 108: *goja.newFunc(&{0xc0003d4e10 function() { + compiler.go:433: 108: *goja.newFunc(&{0xc000464550 function() { Array.from.call(T2, source); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1344,9 +1380,9 @@ compiler.go:433: 110: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayFrom (0.00s) +--- PASS: TestArrayFrom (0.01s) === RUN TestArrayOf - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4730 T1 function T1() { + compiler.go:433: 0: *goja.newFunc(&{0xc000464960 T1 function T1() { Object.preventExtensions(this); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1358,7 +1394,7 @@ compiler.go:433: > 6: goja._pop({}) compiler.go:433: > 7: goja._loadUndef({}) compiler.go:433: > 8: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d4780 T2 function T2() { + compiler.go:433: 1: *goja.newFunc(&{0xc0004649b0 T2 function T2() { Object.defineProperty(this, 0, { configurable: false, writable: true, @@ -1386,7 +1422,7 @@ compiler.go:433: 3: goja.loadDynamic(assert) compiler.go:433: 4: goja.getPropCallee(throws) compiler.go:433: 5: goja.loadDynamic(TypeError) - compiler.go:433: 6: *goja.newFunc(&{0xc0003d47d0 function() { + compiler.go:433: 6: *goja.newFunc(&{0xc000464a00 function() { Array.of.call(T1, 'Bob'); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1404,7 +1440,7 @@ compiler.go:433: 9: goja.loadDynamic(assert) compiler.go:433: 10: goja.getPropCallee(throws) compiler.go:433: 11: goja.loadDynamic(TypeError) - compiler.go:433: 12: *goja.newFunc(&{0xc0003d4820 function() { + compiler.go:433: 12: *goja.newFunc(&{0xc000464a50 function() { Array.of.call(T2, 'Bob'); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1450,7 +1486,7 @@ compiler.go:433: 43: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayOf (0.00s) +--- PASS: TestArrayOf (0.01s) === RUN TestUnscopables compiler.go:433: 0: *goja.bindGlobal(&{[keys _length] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(keys) @@ -1490,7 +1526,7 @@ compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(throws) compiler.go:433: 2: goja.loadDynamic(TypeError) - compiler.go:433: 3: *goja.newFunc(&{0xc0003d4f50 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc000464eb0 function() { [1,2].sort(null); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1511,7 +1547,7 @@ compiler.go:433: 7: goja.loadDynamic(assert) compiler.go:433: 8: goja.getPropCallee(throws) compiler.go:433: 9: goja.loadDynamic(TypeError) - compiler.go:433: 10: *goja.newFunc(&{0xc0003d4fa0 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc000464f00 function() { [1,2].sort({}); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1557,7 +1593,7 @@ compiler.go:433: 21: goja.loadDynamic(array) compiler.go:433: 22: goja.loadVal({2}) compiler.go:433: 23: goja._newObject({}) - compiler.go:433: 24: *goja.newMethod(&{{0xc0003d5270 get get() { + compiler.go:433: 24: *goja.newMethod(&{{0xc0004651d0 get get() { array.pop(); array.pop(); return this.foo; @@ -1576,7 +1612,7 @@ compiler.go:433: > 11: goja.getProp(foo) compiler.go:433: > 12: goja._ret({}) compiler.go:433: 25: *goja.defineMethodKeyed(&{get true}) - compiler.go:433: 26: *goja.newMethod(&{{0xc0003d52c0 set set(v) { + compiler.go:433: 26: *goja.newMethod(&{{0xc000465220 set set(v) { this.foo = v; } 1 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -1673,7 +1709,7 @@ compiler.go:433: 111: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArraySortNonStdArray (0.00s) +--- PASS: TestArraySortNonStdArray (0.01s) === RUN TestArrayConcat compiler.go:433: 0: *goja.bindGlobal(&{[concat array sparseArray nonSpreadableArray arrayLike spreadableArrayLike] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(concat) @@ -1953,7 +1989,7 @@ compiler.go:433: 275: goja.getProp(constructor) compiler.go:433: 276: goja.loadDynamic(Symbol) compiler.go:433: 277: goja.getProp(species) - compiler.go:433: 278: *goja.newFunc(&{0xc0003d5950 function () { + compiler.go:433: 278: *goja.newFunc(&{0xc0004658b0 function () { return { foo: 1 }; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -1974,7 +2010,7 @@ compiler.go:433: 289: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayConcat (0.00s) +--- PASS: TestArrayConcat (0.01s) === RUN TestArrayFlat compiler.go:433: 0: *goja.bindGlobal(&{[array] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(array) @@ -2174,11 +2210,11 @@ compiler.go:433: 195: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayFlat (0.00s) +--- PASS: TestArrayFlat (0.01s) === RUN TestArrayFlatMap compiler.go:433: 0: *goja.bindGlobal(&{[double array] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(double) - compiler.go:433: 2: *goja.newFunc(&{0xc0003d5db0 double function(x) { + compiler.go:433: 2: *goja.newFunc(&{0xc000465d10 double function(x) { if (isNaN(x)) { return x } @@ -2268,7 +2304,7 @@ compiler.go:433: 73: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayFlatMap (0.00s) +--- PASS: TestArrayFlatMap (0.01s) === RUN TestArrayProto compiler.go:433: 0: *goja.bindGlobal(&{[] [] [] [a] false}) compiler.go:433: 1: goja.loadDynamic(Array) @@ -2600,9 +2636,9 @@ compiler.go:433: 250: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayToSpliced (0.00s) +--- PASS: TestArrayToSpliced (0.01s) === RUN TestBigInt - compiler.go:433: 0: goja.loadVal({0xc00030df40}) + compiler.go:433: 0: goja.loadVal({0xc00038a0c0}) compiler.go:433: 1: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 @@ -2616,7 +2652,7 @@ === RUN TestBigIntFormat compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) - compiler.go:433: 2: goja.loadVal({0xc00034e4c0}) + compiler.go:433: 2: goja.loadVal({0xc00038a6e0}) compiler.go:433: 3: goja.getPropCallee(toString) compiler.go:433: 4: goja.loadDynamic(undefined) compiler.go:433: 5: goja.call(1) @@ -2627,9 +2663,9 @@ compiler.go:433: 10: goja.loadDynamic(assert) compiler.go:433: 11: goja.getPropCallee(throws) compiler.go:433: 12: goja.loadDynamic(RangeError) - compiler.go:433: 13: *goja.newArrowFunc(&{{0xc0000212c0 () => { (1n).toString(-1); } 0 false}}) + compiler.go:433: 13: *goja.newArrowFunc(&{{0xc0003a48c0 () => { (1n).toString(-1); } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc00034e520}) + compiler.go:433: > 1: goja.loadVal({0xc00038a740}) compiler.go:433: > 2: goja.getPropCallee(toString) compiler.go:433: > 3: goja.loadVal({1}) compiler.go:433: > 4: goja._neg({}) @@ -2643,9 +2679,9 @@ compiler.go:433: 17: goja.loadDynamic(assert) compiler.go:433: 18: goja.getPropCallee(throws) compiler.go:433: 19: goja.loadDynamic(RangeError) - compiler.go:433: 20: *goja.newArrowFunc(&{{0xc000021310 () => { (1n).toString(37); } 0 false}}) + compiler.go:433: 20: *goja.newArrowFunc(&{{0xc0003a4910 () => { (1n).toString(37); } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc00034e5a0}) + compiler.go:433: > 1: goja.loadVal({0xc00038a7c0}) compiler.go:433: > 2: goja.getPropCallee(toString) compiler.go:433: > 3: goja.loadVal({37}) compiler.go:433: > 4: goja.call(1) @@ -2657,7 +2693,7 @@ compiler.go:433: 23: goja._pop({}) compiler.go:433: 24: goja.loadDynamic(assert) compiler.go:433: 25: goja.getPropCallee(sameValue) - compiler.go:433: 26: goja.loadVal({0xc00034e600}) + compiler.go:433: 26: goja.loadVal({0xc00038a820}) compiler.go:433: 27: goja.getPropCallee(toString) compiler.go:433: 28: goja.loadVal({2}) compiler.go:433: 29: goja.call(1) @@ -2667,7 +2703,7 @@ compiler.go:433: 33: goja._pop({}) compiler.go:433: 34: goja.loadDynamic(assert) compiler.go:433: 35: goja.getPropCallee(sameValue) - compiler.go:433: 36: goja.loadVal({0xc00034e660}) + compiler.go:433: 36: goja.loadVal({0xc00038a880}) compiler.go:433: 37: goja.getPropCallee(toString) compiler.go:433: 38: goja.loadVal({3}) compiler.go:433: 39: goja.call(1) @@ -2683,7 +2719,7 @@ compiler.go:433: 1: goja.loadDynamic(assert) compiler.go:433: 2: goja.getPropCallee(throws) compiler.go:433: 3: goja.loadDynamic(TypeError) - compiler.go:433: 4: *goja.newArrowFunc(&{{0xc000372690 () => { 1 - 1n; } 0 false}}) + compiler.go:433: 4: *goja.newArrowFunc(&{{0xc0003a5a40 () => { 1 - 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2697,7 +2733,7 @@ compiler.go:433: 8: goja.loadDynamic(assert) compiler.go:433: 9: goja.getPropCallee(throws) compiler.go:433: 10: goja.loadDynamic(TypeError) - compiler.go:433: 11: *goja.newArrowFunc(&{{0xc000372730 () => { 1n - 1; } 0 false}}) + compiler.go:433: 11: *goja.newArrowFunc(&{{0xc0003a5ae0 () => { 1n - 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2711,7 +2747,7 @@ compiler.go:433: 15: goja.loadDynamic(assert) compiler.go:433: 16: goja.getPropCallee(throws) compiler.go:433: 17: goja.loadDynamic(TypeError) - compiler.go:433: 18: *goja.newArrowFunc(&{{0xc0003727d0 () => { 1n + 1; } 0 false}}) + compiler.go:433: 18: *goja.newArrowFunc(&{{0xc0003a5b80 () => { 1n + 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2725,7 +2761,7 @@ compiler.go:433: 22: goja.loadDynamic(assert) compiler.go:433: 23: goja.getPropCallee(throws) compiler.go:433: 24: goja.loadDynamic(TypeError) - compiler.go:433: 25: *goja.newArrowFunc(&{{0xc000372870 () => { 1 + 1n; } 0 false}}) + compiler.go:433: 25: *goja.newArrowFunc(&{{0xc0003a5c20 () => { 1 + 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2739,7 +2775,7 @@ compiler.go:433: 29: goja.loadDynamic(assert) compiler.go:433: 30: goja.getPropCallee(throws) compiler.go:433: 31: goja.loadDynamic(TypeError) - compiler.go:433: 32: *goja.newArrowFunc(&{{0xc000372910 () => { 1 * 1n; } 0 false}}) + compiler.go:433: 32: *goja.newArrowFunc(&{{0xc0003a5cc0 () => { 1 * 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2753,7 +2789,7 @@ compiler.go:433: 36: goja.loadDynamic(assert) compiler.go:433: 37: goja.getPropCallee(throws) compiler.go:433: 38: goja.loadDynamic(TypeError) - compiler.go:433: 39: *goja.newArrowFunc(&{{0xc0003729b0 () => { 1n * 1; } 0 false}}) + compiler.go:433: 39: *goja.newArrowFunc(&{{0xc0003a5d60 () => { 1n * 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2767,7 +2803,7 @@ compiler.go:433: 43: goja.loadDynamic(assert) compiler.go:433: 44: goja.getPropCallee(throws) compiler.go:433: 45: goja.loadDynamic(TypeError) - compiler.go:433: 46: *goja.newArrowFunc(&{{0xc000372a50 () => { 1 / 1n; } 0 false}}) + compiler.go:433: 46: *goja.newArrowFunc(&{{0xc0003a5e00 () => { 1 / 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2781,7 +2817,7 @@ compiler.go:433: 50: goja.loadDynamic(assert) compiler.go:433: 51: goja.getPropCallee(throws) compiler.go:433: 52: goja.loadDynamic(TypeError) - compiler.go:433: 53: *goja.newArrowFunc(&{{0xc000372af0 () => { 1n / 1; } 0 false}}) + compiler.go:433: 53: *goja.newArrowFunc(&{{0xc0003a5ea0 () => { 1n / 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2795,7 +2831,7 @@ compiler.go:433: 57: goja.loadDynamic(assert) compiler.go:433: 58: goja.getPropCallee(throws) compiler.go:433: 59: goja.loadDynamic(TypeError) - compiler.go:433: 60: *goja.newArrowFunc(&{{0xc000372b90 () => { 1 % 1n; } 0 false}}) + compiler.go:433: 60: *goja.newArrowFunc(&{{0xc00050a050 () => { 1 % 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2809,7 +2845,7 @@ compiler.go:433: 64: goja.loadDynamic(assert) compiler.go:433: 65: goja.getPropCallee(throws) compiler.go:433: 66: goja.loadDynamic(TypeError) - compiler.go:433: 67: *goja.newArrowFunc(&{{0xc000372c30 () => { 1n % 1; } 0 false}}) + compiler.go:433: 67: *goja.newArrowFunc(&{{0xc00050a0f0 () => { 1n % 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2823,7 +2859,7 @@ compiler.go:433: 71: goja.loadDynamic(assert) compiler.go:433: 72: goja.getPropCallee(throws) compiler.go:433: 73: goja.loadDynamic(TypeError) - compiler.go:433: 74: *goja.newArrowFunc(&{{0xc000372cd0 () => { 1n ** 1; } 0 false}}) + compiler.go:433: 74: *goja.newArrowFunc(&{{0xc00050a190 () => { 1n ** 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2837,7 +2873,7 @@ compiler.go:433: 78: goja.loadDynamic(assert) compiler.go:433: 79: goja.getPropCallee(throws) compiler.go:433: 80: goja.loadDynamic(TypeError) - compiler.go:433: 81: *goja.newArrowFunc(&{{0xc000372d70 () => { 1 ** 1n; } 0 false}}) + compiler.go:433: 81: *goja.newArrowFunc(&{{0xc00050a230 () => { 1 ** 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2851,7 +2887,7 @@ compiler.go:433: 85: goja.loadDynamic(assert) compiler.go:433: 86: goja.getPropCallee(throws) compiler.go:433: 87: goja.loadDynamic(TypeError) - compiler.go:433: 88: *goja.newArrowFunc(&{{0xc000372e10 () => { 1 & 1n; } 0 false}}) + compiler.go:433: 88: *goja.newArrowFunc(&{{0xc00050a2d0 () => { 1 & 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2865,7 +2901,7 @@ compiler.go:433: 92: goja.loadDynamic(assert) compiler.go:433: 93: goja.getPropCallee(throws) compiler.go:433: 94: goja.loadDynamic(TypeError) - compiler.go:433: 95: *goja.newArrowFunc(&{{0xc000372eb0 () => { 1n & 1; } 0 false}}) + compiler.go:433: 95: *goja.newArrowFunc(&{{0xc00050a370 () => { 1n & 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2879,7 +2915,7 @@ compiler.go:433: 99: goja.loadDynamic(assert) compiler.go:433: 100: goja.getPropCallee(throws) compiler.go:433: 101: goja.loadDynamic(TypeError) - compiler.go:433: 102: *goja.newArrowFunc(&{{0xc000372f50 () => { 1 | 1n; } 0 false}}) + compiler.go:433: 102: *goja.newArrowFunc(&{{0xc00050a410 () => { 1 | 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2893,7 +2929,7 @@ compiler.go:433: 106: goja.loadDynamic(assert) compiler.go:433: 107: goja.getPropCallee(throws) compiler.go:433: 108: goja.loadDynamic(TypeError) - compiler.go:433: 109: *goja.newArrowFunc(&{{0xc000372ff0 () => { 1n | 1; } 0 false}}) + compiler.go:433: 109: *goja.newArrowFunc(&{{0xc00050a4b0 () => { 1n | 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2907,7 +2943,7 @@ compiler.go:433: 113: goja.loadDynamic(assert) compiler.go:433: 114: goja.getPropCallee(throws) compiler.go:433: 115: goja.loadDynamic(TypeError) - compiler.go:433: 116: *goja.newArrowFunc(&{{0xc000373090 () => { 1 ^ 1n; } 0 false}}) + compiler.go:433: 116: *goja.newArrowFunc(&{{0xc00050a550 () => { 1 ^ 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2921,7 +2957,7 @@ compiler.go:433: 120: goja.loadDynamic(assert) compiler.go:433: 121: goja.getPropCallee(throws) compiler.go:433: 122: goja.loadDynamic(TypeError) - compiler.go:433: 123: *goja.newArrowFunc(&{{0xc000373130 () => { 1n ^ 1; } 0 false}}) + compiler.go:433: 123: *goja.newArrowFunc(&{{0xc00050a5f0 () => { 1n ^ 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2935,7 +2971,7 @@ compiler.go:433: 127: goja.loadDynamic(assert) compiler.go:433: 128: goja.getPropCallee(throws) compiler.go:433: 129: goja.loadDynamic(TypeError) - compiler.go:433: 130: *goja.newArrowFunc(&{{0xc0003731d0 () => { 1 << 1n; } 0 false}}) + compiler.go:433: 130: *goja.newArrowFunc(&{{0xc00050a690 () => { 1 << 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2949,7 +2985,7 @@ compiler.go:433: 134: goja.loadDynamic(assert) compiler.go:433: 135: goja.getPropCallee(throws) compiler.go:433: 136: goja.loadDynamic(TypeError) - compiler.go:433: 137: *goja.newArrowFunc(&{{0xc000373270 () => { 1n << 1; } 0 false}}) + compiler.go:433: 137: *goja.newArrowFunc(&{{0xc00050a730 () => { 1n << 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2963,7 +2999,7 @@ compiler.go:433: 141: goja.loadDynamic(assert) compiler.go:433: 142: goja.getPropCallee(throws) compiler.go:433: 143: goja.loadDynamic(TypeError) - compiler.go:433: 144: *goja.newArrowFunc(&{{0xc000373310 () => { 1 >> 1n; } 0 false}}) + compiler.go:433: 144: *goja.newArrowFunc(&{{0xc00050a7d0 () => { 1 >> 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2977,7 +3013,7 @@ compiler.go:433: 148: goja.loadDynamic(assert) compiler.go:433: 149: goja.getPropCallee(throws) compiler.go:433: 150: goja.loadDynamic(TypeError) - compiler.go:433: 151: *goja.newArrowFunc(&{{0xc0003733b0 () => { 1n >> 1; } 0 false}}) + compiler.go:433: 151: *goja.newArrowFunc(&{{0xc00050a870 () => { 1n >> 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({Cannot mix BigInt and other types, use explicit conversions}) @@ -2991,7 +3027,7 @@ compiler.go:433: 155: goja.loadDynamic(assert) compiler.go:433: 156: goja.getPropCallee(throws) compiler.go:433: 157: goja.loadDynamic(TypeError) - compiler.go:433: 158: *goja.newArrowFunc(&{{0xc000373450 () => { 1 >>> 1n; } 0 false}}) + compiler.go:433: 158: *goja.newArrowFunc(&{{0xc00050a910 () => { 1 >>> 1n; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({BigInts have no unsigned right shift, use >> instead}) @@ -3005,7 +3041,7 @@ compiler.go:433: 162: goja.loadDynamic(assert) compiler.go:433: 163: goja.getPropCallee(throws) compiler.go:433: 164: goja.loadDynamic(TypeError) - compiler.go:433: 165: *goja.newArrowFunc(&{{0xc0003734f0 () => { 1n >>> 1; } 0 false}}) + compiler.go:433: 165: *goja.newArrowFunc(&{{0xc00050a9b0 () => { 1n >>> 1; } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(TypeError) compiler.go:433: > 2: goja.loadVal({BigInts have no unsigned right shift, use >> instead}) @@ -3018,122 +3054,122 @@ compiler.go:433: 168: goja._pop({}) compiler.go:433: 169: goja.loadDynamic(assert) compiler.go:433: 170: goja.getPropCallee(sameValue) - compiler.go:433: 171: goja.loadVal({0xc00034fdc0}) - compiler.go:433: 172: goja.loadVal({0xc00034fe00}) + compiler.go:433: 171: goja.loadVal({0xc0004bb280}) + compiler.go:433: 172: goja.loadVal({0xc0004bb2c0}) compiler.go:433: 173: goja._add({}) - compiler.go:433: 174: goja.loadVal({0xc00034fe40}) + compiler.go:433: 174: goja.loadVal({0xc0004bb300}) compiler.go:433: 175: goja.loadVal({add}) compiler.go:433: 176: goja.call(3) compiler.go:433: 177: goja._pop({}) compiler.go:433: 178: goja.loadDynamic(assert) compiler.go:433: 179: goja.getPropCallee(sameValue) - compiler.go:433: 180: goja.loadVal({0xc00034fea0}) - compiler.go:433: 181: goja.loadVal({0xc00034fee0}) + compiler.go:433: 180: goja.loadVal({0xc0004bb360}) + compiler.go:433: 181: goja.loadVal({0xc0004bb3a0}) compiler.go:433: 182: goja._sub({}) - compiler.go:433: 183: goja.loadVal({0xc00034ff20}) + compiler.go:433: 183: goja.loadVal({0xc0004bb3e0}) compiler.go:433: 184: goja.loadVal({sub}) compiler.go:433: 185: goja.call(3) compiler.go:433: 186: goja._pop({}) compiler.go:433: 187: goja.loadDynamic(assert) compiler.go:433: 188: goja.getPropCallee(sameValue) - compiler.go:433: 189: goja.loadVal({0xc000378000}) - compiler.go:433: 190: goja.loadVal({0xc000378040}) + compiler.go:433: 189: goja.loadVal({0xc0004bb440}) + compiler.go:433: 190: goja.loadVal({0xc0004bb480}) compiler.go:433: 191: goja._mul({}) - compiler.go:433: 192: goja.loadVal({0xc000378080}) + compiler.go:433: 192: goja.loadVal({0xc0004bb4c0}) compiler.go:433: 193: goja.loadVal({mul}) compiler.go:433: 194: goja.call(3) compiler.go:433: 195: goja._pop({}) compiler.go:433: 196: goja.loadDynamic(assert) compiler.go:433: 197: goja.getPropCallee(sameValue) - compiler.go:433: 198: goja.loadVal({0xc0003780e0}) - compiler.go:433: 199: goja.loadVal({0xc000378120}) + compiler.go:433: 198: goja.loadVal({0xc0004bb520}) + compiler.go:433: 199: goja.loadVal({0xc0004bb560}) compiler.go:433: 200: goja._div({}) - compiler.go:433: 201: goja.loadVal({0xc000378160}) + compiler.go:433: 201: goja.loadVal({0xc0004bb5a0}) compiler.go:433: 202: goja.loadVal({div}) compiler.go:433: 203: goja.call(3) compiler.go:433: 204: goja._pop({}) compiler.go:433: 205: goja.loadDynamic(assert) compiler.go:433: 206: goja.getPropCallee(sameValue) - compiler.go:433: 207: goja.loadVal({0xc0003781c0}) - compiler.go:433: 208: goja.loadVal({0xc000378200}) + compiler.go:433: 207: goja.loadVal({0xc0004bb600}) + compiler.go:433: 208: goja.loadVal({0xc0004bb640}) compiler.go:433: 209: goja._mod({}) - compiler.go:433: 210: goja.loadVal({0xc000378240}) + compiler.go:433: 210: goja.loadVal({0xc0004bb680}) compiler.go:433: 211: goja.loadVal({mod}) compiler.go:433: 212: goja.call(3) compiler.go:433: 213: goja._pop({}) compiler.go:433: 214: goja.loadDynamic(assert) compiler.go:433: 215: goja.getPropCallee(sameValue) - compiler.go:433: 216: goja.loadVal({0xc0003782a0}) - compiler.go:433: 217: goja.loadVal({0xc0003782e0}) + compiler.go:433: 216: goja.loadVal({0xc0004bb6e0}) + compiler.go:433: 217: goja.loadVal({0xc0004bb720}) compiler.go:433: 218: goja._exp({}) - compiler.go:433: 219: goja.loadVal({0xc000378320}) + compiler.go:433: 219: goja.loadVal({0xc0004bb760}) compiler.go:433: 220: goja.loadVal({exp}) compiler.go:433: 221: goja.call(3) compiler.go:433: 222: goja._pop({}) compiler.go:433: 223: goja.loadDynamic(assert) compiler.go:433: 224: goja.getPropCallee(sameValue) - compiler.go:433: 225: goja.loadVal({0xc000378380}) - compiler.go:433: 226: goja.loadVal({0xc0003783c0}) + compiler.go:433: 225: goja.loadVal({0xc0004bb7c0}) + compiler.go:433: 226: goja.loadVal({0xc0004bb800}) compiler.go:433: 227: goja._and({}) - compiler.go:433: 228: goja.loadVal({0xc000378400}) + compiler.go:433: 228: goja.loadVal({0xc0004bb840}) compiler.go:433: 229: goja.loadVal({and}) compiler.go:433: 230: goja.call(3) compiler.go:433: 231: goja._pop({}) compiler.go:433: 232: goja.loadDynamic(assert) compiler.go:433: 233: goja.getPropCallee(sameValue) - compiler.go:433: 234: goja.loadVal({0xc000378460}) - compiler.go:433: 235: goja.loadVal({0xc0003784a0}) + compiler.go:433: 234: goja.loadVal({0xc0004bb8a0}) + compiler.go:433: 235: goja.loadVal({0xc0004bb8e0}) compiler.go:433: 236: goja._or({}) - compiler.go:433: 237: goja.loadVal({0xc0003784e0}) + compiler.go:433: 237: goja.loadVal({0xc0004bb920}) compiler.go:433: 238: goja.loadVal({or}) compiler.go:433: 239: goja.call(3) compiler.go:433: 240: goja._pop({}) compiler.go:433: 241: goja.loadDynamic(assert) compiler.go:433: 242: goja.getPropCallee(sameValue) - compiler.go:433: 243: goja.loadVal({0xc000378540}) - compiler.go:433: 244: goja.loadVal({0xc000378580}) + compiler.go:433: 243: goja.loadVal({0xc0004bb980}) + compiler.go:433: 244: goja.loadVal({0xc0004bb9c0}) compiler.go:433: 245: goja._xor({}) - compiler.go:433: 246: goja.loadVal({0xc0003785c0}) + compiler.go:433: 246: goja.loadVal({0xc0004bba00}) compiler.go:433: 247: goja.loadVal({xor}) compiler.go:433: 248: goja.call(3) compiler.go:433: 249: goja._pop({}) compiler.go:433: 250: goja.loadDynamic(assert) compiler.go:433: 251: goja.getPropCallee(sameValue) - compiler.go:433: 252: goja.loadVal({0xc000378620}) - compiler.go:433: 253: goja.loadVal({0xc000378660}) + compiler.go:433: 252: goja.loadVal({0xc0004bba60}) + compiler.go:433: 253: goja.loadVal({0xc0004bbaa0}) compiler.go:433: 254: goja._sal({}) - compiler.go:433: 255: goja.loadVal({0xc0003786a0}) + compiler.go:433: 255: goja.loadVal({0xc0004bbae0}) compiler.go:433: 256: goja.loadVal({lsh}) compiler.go:433: 257: goja.call(3) compiler.go:433: 258: goja._pop({}) compiler.go:433: 259: goja.loadDynamic(assert) compiler.go:433: 260: goja.getPropCallee(sameValue) - compiler.go:433: 261: goja.loadVal({0xc000378700}) - compiler.go:433: 262: goja.loadVal({0xc0003894a0}) + compiler.go:433: 261: goja.loadVal({0xc0004bbb40}) + compiler.go:433: 262: goja.loadVal({0xc0000d8e20}) compiler.go:433: 263: goja._sal({}) - compiler.go:433: 264: goja.loadVal({0xc000378780}) + compiler.go:433: 264: goja.loadVal({0xc0004bbbc0}) compiler.go:433: 265: goja.loadVal({neg lsh}) compiler.go:433: 266: goja.call(3) compiler.go:433: 267: goja._pop({}) compiler.go:433: 268: goja.loadDynamic(assert) compiler.go:433: 269: goja.getPropCallee(sameValue) - compiler.go:433: 270: goja.loadVal({0xc0003787e0}) - compiler.go:433: 271: goja.loadVal({0xc000378820}) + compiler.go:433: 270: goja.loadVal({0xc0004bbc20}) + compiler.go:433: 271: goja.loadVal({0xc0004bbc60}) compiler.go:433: 272: goja._sar({}) - compiler.go:433: 273: goja.loadVal({0xc000378860}) + compiler.go:433: 273: goja.loadVal({0xc0004bbca0}) compiler.go:433: 274: goja.loadVal({rsh}) compiler.go:433: 275: goja.call(3) compiler.go:433: 276: goja._pop({}) compiler.go:433: 277: goja.loadDynamic(assert) compiler.go:433: 278: goja.getPropCallee(sameValue) - compiler.go:433: 279: goja.loadVal({0xc0003788c0}) - compiler.go:433: 280: goja.loadVal({0xc000389620}) + compiler.go:433: 279: goja.loadVal({0xc0004bbd00}) + compiler.go:433: 280: goja.loadVal({0xc0000d9060}) compiler.go:433: 281: goja._sar({}) - compiler.go:433: 282: goja.loadVal({0xc000378940}) + compiler.go:433: 282: goja.loadVal({0xc0004bbd80}) compiler.go:433: 283: goja.loadVal({neg rsh}) compiler.go:433: 284: goja.call(3) compiler.go:433: 285: goja._pop({}) - compiler.go:433: 286: goja.loadVal({0xc0003789c0}) + compiler.go:433: 286: goja.loadVal({0xc0004bbe00}) compiler.go:433: 287: goja.initGlobalP(a) compiler.go:433: 288: goja.loadDynamic(assert) compiler.go:433: 289: goja.getPropCallee(sameValue) @@ -3145,7 +3181,7 @@ compiler.go:433: 295: goja.rdupN(1) compiler.go:433: 296: goja._putValue({}) compiler.go:433: 297: goja._pop({}) - compiler.go:433: 298: goja.loadVal({0xc000378a00}) + compiler.go:433: 298: goja.loadVal({0xc0004bbe40}) compiler.go:433: 299: goja.loadVal({inc}) compiler.go:433: 300: goja.call(3) compiler.go:433: 301: goja._pop({}) @@ -3159,18 +3195,18 @@ compiler.go:433: 309: goja.rdupN(1) compiler.go:433: 310: goja._putValue({}) compiler.go:433: 311: goja._pop({}) - compiler.go:433: 312: goja.loadVal({0xc000378a60}) + compiler.go:433: 312: goja.loadVal({0xc0004bbea0}) compiler.go:433: 313: goja.loadVal({dec}) compiler.go:433: 314: goja.call(3) compiler.go:433: 315: goja._pop({}) compiler.go:433: 316: goja.loadDynamic(assert) compiler.go:433: 317: goja.getPropCallee(sameValue) compiler.go:433: 318: goja.loadDynamicCallee(Object) - compiler.go:433: 319: goja.loadVal({0xc000378ac0}) + compiler.go:433: 319: goja.loadVal({0xc0004bbf00}) compiler.go:433: 320: goja.call(1) - compiler.go:433: 321: goja.loadVal({0xc000378b00}) + compiler.go:433: 321: goja.loadVal({0xc0004bbf40}) compiler.go:433: 322: goja._sub({}) - compiler.go:433: 323: goja.loadVal({0xc000378b40}) + compiler.go:433: 323: goja.loadVal({0xc00027a040}) compiler.go:433: 324: goja.loadVal({primitive sub}) compiler.go:433: 325: goja.call(3) compiler.go:433: 326: goja._pop({}) @@ -3178,12 +3214,12 @@ compiler.go:433: 328: goja.getPropCallee(sameValue) compiler.go:433: 329: goja.loadDynamicCallee(Object) compiler.go:433: 330: goja.loadDynamicCallee(Object) - compiler.go:433: 331: goja.loadVal({0xc000378ba0}) + compiler.go:433: 331: goja.loadVal({0xc00027a0a0}) compiler.go:433: 332: goja.call(1) compiler.go:433: 333: goja.call(1) - compiler.go:433: 334: goja.loadVal({0xc000378be0}) + compiler.go:433: 334: goja.loadVal({0xc00027a0e0}) compiler.go:433: 335: goja._sub({}) - compiler.go:433: 336: goja.loadVal({0xc000378c20}) + compiler.go:433: 336: goja.loadVal({0xc00027a120}) compiler.go:433: 337: goja.loadVal({primitive sub}) compiler.go:433: 338: goja.call(3) compiler.go:433: 339: goja._pop({}) @@ -3193,34 +3229,34 @@ compiler.go:433: 343: goja.loadDynamic(Symbol) compiler.go:433: 344: goja.getProp(toPrimitive) compiler.go:433: 345: goja._toPropertyKey({}) - compiler.go:433: 346: *goja.newArrowFunc(&{{0xc000373630 () => 1n 0 false}}) + compiler.go:433: 346: *goja.newArrowFunc(&{{0xc00050aaf0 () => 1n 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc000378c80}) + compiler.go:433: > 1: goja.loadVal({0xc00027a180}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 347: goja._setElem1Named({}) - compiler.go:433: 348: goja.loadVal({0xc000378cc0}) + compiler.go:433: 348: goja.loadVal({0xc00027a1c0}) compiler.go:433: 349: goja._sub({}) - compiler.go:433: 350: goja.loadVal({0xc000378d00}) + compiler.go:433: 350: goja.loadVal({0xc00027a200}) compiler.go:433: 351: goja.loadVal({primitive sub}) compiler.go:433: 352: goja.call(3) compiler.go:433: 353: goja._pop({}) compiler.go:433: 354: goja.loadDynamic(assert) compiler.go:433: 355: goja.getPropCallee(sameValue) compiler.go:433: 356: goja._newObject({}) - compiler.go:433: 357: *goja.newArrowFunc(&{{0xc000373680 valueOf () => 1n 0 false}}) + compiler.go:433: 357: *goja.newArrowFunc(&{{0xc00050ab40 valueOf () => 1n 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc000378d60}) + compiler.go:433: > 1: goja.loadVal({0xc00027a260}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 358: goja.putProp(valueOf) - compiler.go:433: 359: goja.loadVal({0xc000378da0}) + compiler.go:433: 359: goja.loadVal({0xc00027a2a0}) compiler.go:433: 360: goja._sub({}) - compiler.go:433: 361: goja.loadVal({0xc000378de0}) + compiler.go:433: 361: goja.loadVal({0xc00027a2e0}) compiler.go:433: 362: goja.loadVal({valueOf sub}) compiler.go:433: 363: goja.call(3) compiler.go:433: 364: goja._pop({}) compiler.go:433: 365: goja.loadDynamic(assert) compiler.go:433: 366: goja.getPropCallee(sameValue) - compiler.go:433: 367: goja.loadVal({0xc000378e40}) + compiler.go:433: 367: goja.loadVal({0xc00027a340}) compiler.go:433: 368: goja.loadVal({0}) compiler.go:433: 369: goja._op_gt({}) compiler.go:433: 370: goja.loadVal({true}) @@ -3230,7 +3266,7 @@ compiler.go:433: 374: goja.loadDynamic(assert) compiler.go:433: 375: goja.getPropCallee(sameValue) compiler.go:433: 376: goja.loadVal({0}) - compiler.go:433: 377: goja.loadVal({0xc000378ec0}) + compiler.go:433: 377: goja.loadVal({0xc00027a3c0}) compiler.go:433: 378: goja._op_gt({}) compiler.go:433: 379: goja.loadVal({false}) compiler.go:433: 380: goja.loadVal({gt}) @@ -3239,7 +3275,7 @@ compiler.go:433: 383: goja.loadDynamic(assert) compiler.go:433: 384: goja.getPropCallee(sameValue) compiler.go:433: 385: goja.loadDynamicCallee(Object) - compiler.go:433: 386: goja.loadVal({0xc000378f40}) + compiler.go:433: 386: goja.loadVal({0xc00027a440}) compiler.go:433: 387: goja.call(1) compiler.go:433: 388: goja.loadVal({0}) compiler.go:433: 389: goja._op_gt({}) @@ -3251,7 +3287,7 @@ compiler.go:433: 395: goja.getPropCallee(sameValue) compiler.go:433: 396: goja.loadVal({0}) compiler.go:433: 397: goja.loadDynamicCallee(Object) - compiler.go:433: 398: goja.loadVal({0xc000378fc0}) + compiler.go:433: 398: goja.loadVal({0xc00027a4c0}) compiler.go:433: 399: goja.call(1) compiler.go:433: 400: goja._op_gt({}) compiler.go:433: 401: goja.loadVal({false}) @@ -3260,7 +3296,7 @@ compiler.go:433: 404: goja._pop({}) compiler.go:433: 405: goja.loadDynamic(assert) compiler.go:433: 406: goja.getPropCallee(sameValue) - compiler.go:433: 407: goja.loadVal({0xc000379040}) + compiler.go:433: 407: goja.loadVal({0xc00027a540}) compiler.go:433: 408: goja.loadVal({0}) compiler.go:433: 409: goja._op_lt({}) compiler.go:433: 410: goja.loadVal({false}) @@ -3270,7 +3306,7 @@ compiler.go:433: 414: goja.loadDynamic(assert) compiler.go:433: 415: goja.getPropCallee(sameValue) compiler.go:433: 416: goja.loadVal({0}) - compiler.go:433: 417: goja.loadVal({0xc0003790c0}) + compiler.go:433: 417: goja.loadVal({0xc00027a5c0}) compiler.go:433: 418: goja._op_lt({}) compiler.go:433: 419: goja.loadVal({true}) compiler.go:433: 420: goja.loadVal({lt}) @@ -3279,7 +3315,7 @@ compiler.go:433: 423: goja.loadDynamic(assert) compiler.go:433: 424: goja.getPropCallee(sameValue) compiler.go:433: 425: goja.loadDynamicCallee(Object) - compiler.go:433: 426: goja.loadVal({0xc000379140}) + compiler.go:433: 426: goja.loadVal({0xc00027a640}) compiler.go:433: 427: goja.call(1) compiler.go:433: 428: goja.loadVal({0}) compiler.go:433: 429: goja._op_lt({}) @@ -3291,7 +3327,7 @@ compiler.go:433: 435: goja.getPropCallee(sameValue) compiler.go:433: 436: goja.loadVal({0}) compiler.go:433: 437: goja.loadDynamicCallee(Object) - compiler.go:433: 438: goja.loadVal({0xc0003791c0}) + compiler.go:433: 438: goja.loadVal({0xc00027a6c0}) compiler.go:433: 439: goja.call(1) compiler.go:433: 440: goja._op_lt({}) compiler.go:433: 441: goja.loadVal({true}) @@ -3300,7 +3336,7 @@ compiler.go:433: 444: goja._pop({}) compiler.go:433: 445: goja.loadDynamic(assert) compiler.go:433: 446: goja.getPropCallee(sameValue) - compiler.go:433: 447: goja.loadVal({0xc000379240}) + compiler.go:433: 447: goja.loadVal({0xc00027a740}) compiler.go:433: 448: goja.loadVal({0}) compiler.go:433: 449: goja._op_gte({}) compiler.go:433: 450: goja.loadVal({true}) @@ -3310,7 +3346,7 @@ compiler.go:433: 454: goja.loadDynamic(assert) compiler.go:433: 455: goja.getPropCallee(sameValue) compiler.go:433: 456: goja.loadVal({0}) - compiler.go:433: 457: goja.loadVal({0xc0003792c0}) + compiler.go:433: 457: goja.loadVal({0xc00027a7c0}) compiler.go:433: 458: goja._op_gte({}) compiler.go:433: 459: goja.loadVal({false}) compiler.go:433: 460: goja.loadVal({ge}) @@ -3318,7 +3354,7 @@ compiler.go:433: 462: goja._pop({}) compiler.go:433: 463: goja.loadDynamic(assert) compiler.go:433: 464: goja.getPropCallee(sameValue) - compiler.go:433: 465: goja.loadVal({0xc000379340}) + compiler.go:433: 465: goja.loadVal({0xc00027a840}) compiler.go:433: 466: goja.loadVal({0}) compiler.go:433: 467: goja._op_lte({}) compiler.go:433: 468: goja.loadVal({false}) @@ -3328,7 +3364,7 @@ compiler.go:433: 472: goja.loadDynamic(assert) compiler.go:433: 473: goja.getPropCallee(sameValue) compiler.go:433: 474: goja.loadVal({0}) - compiler.go:433: 475: goja.loadVal({0xc0003793c0}) + compiler.go:433: 475: goja.loadVal({0xc00027a8c0}) compiler.go:433: 476: goja._op_lte({}) compiler.go:433: 477: goja.loadVal({true}) compiler.go:433: 478: goja.loadVal({le}) @@ -3336,12 +3372,12 @@ compiler.go:433: 480: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestBigIntOperator (0.01s) +--- PASS: TestBigIntOperator (0.02s) === RUN TestHashbangInFunctionConstructor compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(throws) compiler.go:433: 2: goja.loadDynamic(SyntaxError) - compiler.go:433: 3: *goja.newFunc(&{0xc0003721e0 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc00050ad70 function() { new Function("#!") } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -3360,7 +3396,7 @@ compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) compiler.go:433: 2: goja.loadVal({0}) - compiler.go:433: 3: *goja.newFunc(&{0xc000372500 function() {return arguments.length} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc00050b090 function() {return arguments.length} 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 0 1 0 1 true false}) compiler.go:433: > 1: goja.createArgsMapped(0) compiler.go:433: > 2: goja.initStack1P(1) @@ -3404,7 +3440,7 @@ compiler.go:433: 0: goja.loadDynamic(JSON) compiler.go:433: 1: goja.getPropCallee(parse) compiler.go:433: 2: goja.loadVal({{"p": 5}}) - compiler.go:433: 3: *goja.newFunc(&{0xc0003d4640 function(key, value) { + compiler.go:433: 3: *goja.newFunc(&{0xc000464640 function(key, value) { return typeof value === 'number' ? value * 2 // return value * 2 for numbers : value // return everything else unchanged @@ -3441,7 +3477,7 @@ === RUN TestMarshalJSONError --- PASS: TestMarshalJSONError (0.00s) === RUN TestMapEvilIterator - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5130 Iter function Iter(value) { + compiler.go:433: 0: *goja.newFunc(&{0xc000465130 Iter function Iter(value) { this.value = value; this.idx = 0; } 1 true}) @@ -3454,7 +3490,7 @@ compiler.go:433: > 6: goja.setPropStrictP(idx) compiler.go:433: > 7: goja._loadUndef({}) compiler.go:433: > 8: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d5180 t function t(prefix) { + compiler.go:433: 1: *goja.newFunc(&{0xc000465180 t function t(prefix) { var m = new Map(o); assert.sameValue(1, m.size, prefix+": m.size"); assert.sameValue(true, m.has(undefined), prefix+": m.has(undefined)"); @@ -3507,7 +3543,7 @@ compiler.go:433: 5: goja._initValueP({}) compiler.go:433: 6: goja.loadDynamic(Iter) compiler.go:433: 7: goja.getProp(prototype) - compiler.go:433: 8: *goja.newFunc(&{0xc0003d5220 function() { + compiler.go:433: 8: *goja.newFunc(&{0xc000465220 function() { var idx = this.idx; if (idx === 0) { this.idx++; @@ -3539,7 +3575,7 @@ compiler.go:433: 10: goja.loadDynamic(o) compiler.go:433: 11: goja.loadDynamic(Symbol) compiler.go:433: 12: goja.getProp(iterator) - compiler.go:433: 13: *goja.newFunc(&{0xc0003d5270 function() { + compiler.go:433: 13: *goja.newFunc(&{0xc000465270 function() { return new Iter({}); } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -3551,7 +3587,7 @@ compiler.go:433: 15: goja.loadDynamic(assert) compiler.go:433: 16: goja.getPropCallee(throws) compiler.go:433: 17: goja.loadDynamic(TypeError) - compiler.go:433: 18: *goja.newFunc(&{0xc0003d5310 function() { + compiler.go:433: 18: *goja.newFunc(&{0xc000465310 function() { new Map(o); } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -3566,7 +3602,7 @@ compiler.go:433: 21: goja.loadDynamic(o) compiler.go:433: 22: goja.loadDynamic(Symbol) compiler.go:433: 23: goja.getProp(iterator) - compiler.go:433: 24: *goja.newFunc(&{0xc0003d5360 function() { + compiler.go:433: 24: *goja.newFunc(&{0xc000465360 function() { return new Iter({value: []}); } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -3591,7 +3627,7 @@ compiler.go:433: 37: goja._initValueP({}) compiler.go:433: 38: goja.loadDynamic(Map) compiler.go:433: 39: goja.getProp(prototype) - compiler.go:433: 40: *goja.newFunc(&{0xc0003d53b0 function() { + compiler.go:433: 40: *goja.newFunc(&{0xc0004653b0 function() { count++; origSet.apply(this, arguments); } 0 true}) @@ -3644,7 +3680,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 6: goja.dupN(1) - compiler.go:433: 7: *goja.newMethod(&{{0xc0003d5a90 set get set() { + compiler.go:433: 7: *goja.newMethod(&{{0xc000465a90 set get set() { getterCalled++; return null; } 0 true} 1}) @@ -3666,7 +3702,7 @@ compiler.go:433: 16: goja.loadDynamic(iterable) compiler.go:433: 17: goja.loadDynamic(Symbol) compiler.go:433: 18: goja.getProp(iterator) - compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0003d5ae0 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc000465ae0 () => { getIteratorCalled++ return { next: 1 @@ -3766,7 +3802,7 @@ compiler.go:433: 14: goja.loadDynamic(Proxy) compiler.go:433: 15: goja.loadDynamic(obj) compiler.go:433: 16: goja._newObject({}) - compiler.go:433: 17: *goja.newFunc(&{0xc0003d5ef0 getPrototypeOf function(target) { + compiler.go:433: 17: *goja.newFunc(&{0xc000020780 getPrototypeOf function(target) { return proto2; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -3863,7 +3899,7 @@ compiler.go:433: 17: goja.loadDynamic(Proxy) compiler.go:433: 18: goja.loadDynamic(obj) compiler.go:433: 19: goja._newObject({}) - compiler.go:433: 20: *goja.newFunc(&{0xc000020af0 setPrototypeOf function(target, prototype) { + compiler.go:433: 20: *goja.newFunc(&{0xc000020d20 setPrototypeOf function(target, prototype) { return Object.setPrototypeOf(target, proto2); } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -3935,7 +3971,7 @@ compiler.go:433: 10: goja.loadDynamic(Proxy) compiler.go:433: 11: goja.loadDynamic(obj) compiler.go:433: 12: goja._newObject({}) - compiler.go:433: 13: *goja.newFunc(&{0xc000020ff0 isExtensible function(target) { + compiler.go:433: 13: *goja.newFunc(&{0xc000021040 isExtensible function(target) { return false; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -3989,7 +4025,7 @@ compiler.go:433: 7: goja.loadDynamic(Proxy) compiler.go:433: 8: goja.loadDynamic(obj) compiler.go:433: 9: goja._newObject({}) - compiler.go:433: 10: *goja.newFunc(&{0xc000021900 preventExtensions function(target) { + compiler.go:433: 10: *goja.newFunc(&{0xc0000218b0 preventExtensions function(target) { target.canEvolve = false; Object.preventExtensions(obj); return true; @@ -4020,7 +4056,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestProxy_proxy_preventExtensions (0.00s) === RUN TestProxy_native_proxy_preventExtensions ---- PASS: TestProxy_native_proxy_preventExtensions (0.00s) +--- PASS: TestProxy_native_proxy_preventExtensions (0.01s) === RUN TestProxy_Object_target_getOwnPropertyDescriptor compiler.go:433: 0: *goja.bindGlobal(&{[desc obj proxy desc2] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(desc) @@ -4101,7 +4137,7 @@ compiler.go:433: 34: goja.loadDynamic(Proxy) compiler.go:433: 35: goja.loadDynamic(obj) compiler.go:433: 36: goja._newObject({}) - compiler.go:433: 37: *goja.newFunc(&{0xc0002ac140 getOwnPropertyDescriptor function(target, property) { + compiler.go:433: 37: *goja.newFunc(&{0xc000372410 getOwnPropertyDescriptor function(target, property) { return proxy_desc; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -4113,7 +4149,7 @@ compiler.go:433: 41: goja.loadDynamic(assert) compiler.go:433: 42: goja.getPropCallee(throws) compiler.go:433: 43: goja.loadDynamic(TypeError) - compiler.go:433: 44: *goja.newFunc(&{0xc0002ac190 function() { + compiler.go:433: 44: *goja.newFunc(&{0xc000372460 function() { Object.getOwnPropertyDescriptor(proxy, "foo"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -4305,7 +4341,7 @@ compiler.go:433: 167: goja._enumPopClose({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestProxy_native_proxy_getOwnPropertyDescriptorIdx (0.00s) +--- PASS: TestProxy_native_proxy_getOwnPropertyDescriptorIdx (0.01s) === RUN TestProxy_native_proxy_getOwnPropertyDescriptorSym compiler.go:433: 0: *goja.bindGlobal(&{[desc] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(desc) @@ -4381,7 +4417,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc0002acc80 defineProperty function(target, prop, descriptor) { + compiler.go:433: 8: *goja.newFunc(&{0xc000372f50 defineProperty function(target, prop, descriptor) { target.foo = "321tset"; return true; } 3 false}) @@ -4496,7 +4532,7 @@ compiler.go:433: 7: goja.loadDynamic(Proxy) compiler.go:433: 8: goja.loadDynamic(obj) compiler.go:433: 9: goja._newObject({}) - compiler.go:433: 10: *goja.newFunc(&{0xc0002ad130 has function(target, key) { + compiler.go:433: 10: *goja.newFunc(&{0xc000373400 has function(target, key) { return key !== "secret"; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -4546,7 +4582,7 @@ compiler.go:433: 7: goja.loadDynamic(Proxy) compiler.go:433: 8: goja.loadDynamic(obj) compiler.go:433: 9: goja._newObject({}) - compiler.go:433: 10: *goja.newFunc(&{0xc0002ad540 has function(target, key) { + compiler.go:433: 10: *goja.newFunc(&{0xc000373810 has function(target, key) { return key !== "secret"; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -4620,7 +4656,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc0002ad950 get function(target, prop, receiver) { + compiler.go:433: 8: *goja.newFunc(&{0xc0003a42d0 get function(target, prop, receiver) { return "321tset" } 3 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 3}) @@ -4658,7 +4694,7 @@ compiler.go:433: 8: goja.loadDynamic(Proxy) compiler.go:433: 9: goja.loadDynamic(obj) compiler.go:433: 10: goja._newObject({}) - compiler.go:433: 11: *goja.newFunc(&{0xc0002add10 ownKeys function() { + compiler.go:433: 11: *goja.newFunc(&{0xc0003a47d0 ownKeys function() { return ["foo"]; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -4667,7 +4703,7 @@ compiler.go:433: > 3: goja._pushArrayItem({}) compiler.go:433: > 4: goja._ret({}) compiler.go:433: 12: goja.putProp(ownKeys) - compiler.go:433: 13: *goja.newFunc(&{0xc0002addb0 getOwnPropertyDescriptor function(target, prop) { + compiler.go:433: 13: *goja.newFunc(&{0xc0003a4870 getOwnPropertyDescriptor function(target, prop) { if (prop === "foo") { return { value: propValue, @@ -4692,7 +4728,7 @@ compiler.go:433: > 13: goja._loadUndef({}) compiler.go:433: > 14: goja._ret({}) compiler.go:433: 14: goja.putProp(getOwnPropertyDescriptor) - compiler.go:433: 15: *goja.newFunc(&{0xc0002ade00 get function(target, prop, receiver) { + compiler.go:433: 15: *goja.newFunc(&{0xc0003a48c0 get function(target, prop, receiver) { if (prop === "foo") { _prop = prop; _receiver = receiver; @@ -4780,7 +4816,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc000406550 set function(target, prop, receiver) { + compiler.go:433: 8: *goja.newFunc(&{0xc0003a4f50 set function(target, prop, receiver) { target.foo = "321tset"; return true; } 3 false}) @@ -4831,7 +4867,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc0004068c0 set function(target, property, value, receiver) { + compiler.go:433: 8: *goja.newFunc(&{0xc0003a52c0 set function(target, property, value, receiver) { target["foo"] = "321tset"; return true; } 4 false}) @@ -4886,7 +4922,7 @@ compiler.go:433: 7: goja.loadDynamic(Proxy) compiler.go:433: 8: goja.loadDynamic(obj) compiler.go:433: 9: goja._newObject({}) - compiler.go:433: 10: *goja.newFunc(&{0xc000406c30 deleteProperty function(target, prop) { + compiler.go:433: 10: *goja.newFunc(&{0xc0003a5630 deleteProperty function(target, prop) { return true; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -4951,7 +4987,7 @@ compiler.go:433: 7: goja.loadDynamic(Proxy) compiler.go:433: 8: goja.loadDynamic(obj) compiler.go:433: 9: goja._newObject({}) - compiler.go:433: 10: *goja.newFunc(&{0xc000406460 ownKeys function(target) { + compiler.go:433: 10: *goja.newFunc(&{0xc0003a5ae0 ownKeys function(target) { return ["foo", "bar"]; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -5005,7 +5041,7 @@ === RUN TestProxy_target_call compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc000406690 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc0003a5d10 obj function() { return "test" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5027,7 +5063,7 @@ === RUN TestProxy_proxy_call compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc000406960 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc00050a0a0 obj function() { return "test" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5038,7 +5074,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc0004069b0 apply function(target, thisArg, args) { + compiler.go:433: 8: *goja.newFunc(&{0xc00050a0f0 apply function(target, thisArg, args) { return "tset" } 3 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 3}) @@ -5056,7 +5092,7 @@ === RUN TestProxy_target_func_apply compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc000406dc0 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc00050a320 obj function() { return "test" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5079,7 +5115,7 @@ === RUN TestProxy_proxy_func_apply compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc000407090 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc00050a5f0 obj function() { return "test" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5090,7 +5126,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc0004070e0 apply function(target, thisArg, args) { + compiler.go:433: 8: *goja.newFunc(&{0xc00050a640 apply function(target, thisArg, args) { return "tset" } 3 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 3}) @@ -5109,7 +5145,7 @@ === RUN TestProxy_target_func_call compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc000407310 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc00050a870 obj function() { return "test" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5132,7 +5168,7 @@ === RUN TestProxy_proxy_func_call compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc0004075e0 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc00050ab40 obj function() { return "test" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5143,7 +5179,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc000407630 apply function(target, thisArg, args) { + compiler.go:433: 8: *goja.newFunc(&{0xc00050ab90 apply function(target, thisArg, args) { return "tset" } 3 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 3}) @@ -5162,7 +5198,7 @@ === RUN TestProxy_target_new compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy instance] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc000407900 obj function(word) { + compiler.go:433: 2: *goja.newFunc(&{0xc00050ae60 obj function(word) { this.foo = function() { return word; } @@ -5170,7 +5206,7 @@ compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 1 1 true false}) compiler.go:433: > 1: goja._boxThis({}) compiler.go:433: > 2: goja.loadStack(0) - compiler.go:433: > 3: *goja.newFunc(&{0xc000407950 function() { + compiler.go:433: > 3: *goja.newFunc(&{0xc00050aeb0 function() { return word; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -5201,7 +5237,7 @@ === RUN TestProxy_proxy_new compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy instance] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) - compiler.go:433: 2: *goja.newFunc(&{0xc000407e00 obj function(word) { + compiler.go:433: 2: *goja.newFunc(&{0xc00050b360 obj function(word) { this.foo = function() { return word; } @@ -5209,7 +5245,7 @@ compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 1 1 true false}) compiler.go:433: > 1: goja._boxThis({}) compiler.go:433: > 2: goja.loadStack(0) - compiler.go:433: > 3: *goja.newFunc(&{0xc000407e50 function() { + compiler.go:433: > 3: *goja.newFunc(&{0xc00050b3b0 function() { return word; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -5223,7 +5259,7 @@ compiler.go:433: 5: goja.loadDynamic(Proxy) compiler.go:433: 6: goja.loadDynamic(obj) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newFunc(&{0xc000407ea0 construct function(target, args, newTarget) { + compiler.go:433: 8: *goja.newFunc(&{0xc00050b400 construct function(target, args, newTarget) { var word = args[0]; return { foo: function() { @@ -5237,7 +5273,7 @@ compiler.go:433: > 3: goja._getElem({}) compiler.go:433: > 4: goja.initStashP(0) compiler.go:433: > 5: goja._newObject({}) - compiler.go:433: > 6: *goja.newFunc(&{0xc000407ef0 foo function() { + compiler.go:433: > 6: *goja.newFunc(&{0xc00050b5e0 foo function() { return "caught-" + word } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -5296,7 +5332,7 @@ compiler.go:433: 28: goja.loadDynamic(Proxy) compiler.go:433: 29: goja.loadDynamic(target) compiler.go:433: 30: goja._newObject({}) - compiler.go:433: 31: *goja.newFunc(&{0xc000372500 ownKeys function() { + compiler.go:433: 31: *goja.newFunc(&{0xc0004640a0 ownKeys function() { return ["a", "b"]; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5307,7 +5343,7 @@ compiler.go:433: > 5: goja._pushArrayItem({}) compiler.go:433: > 6: goja._ret({}) compiler.go:433: 32: goja.putProp(ownKeys) - compiler.go:433: 33: *goja.newFunc(&{0xc000372550 getOwnPropertyDescriptor function(target, p) { + compiler.go:433: 33: *goja.newFunc(&{0xc0004640f0 getOwnPropertyDescriptor function(target, p) { switch (p) { case "a": case "b": @@ -5403,7 +5439,7 @@ compiler.go:433: 90: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestProxy_proxy_forIn (0.00s) +--- PASS: TestProxy_proxy_forIn (0.01s) === RUN TestProxyExport --- PASS: TestProxyExport (0.00s) === RUN TestProxy_proxy_createTargetNotCallable @@ -5417,7 +5453,7 @@ compiler.go:433: 7: goja.loadDynamic(assert) compiler.go:433: 8: goja.getPropCallee(throws) compiler.go:433: 9: goja.loadDynamic(TypeError) - compiler.go:433: 10: *goja.newFunc(&{0xc000372960 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc0004645f0 function() { p(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5450,7 +5486,7 @@ compiler.go:433: 15: goja.loadDynamic(Proxy) compiler.go:433: 16: goja._newObject({}) compiler.go:433: 17: goja._newObject({}) - compiler.go:433: 18: *goja.newFunc(&{0xc000372cd0 getOwnPropertyDescriptor function(_target, key) { + compiler.go:433: 18: *goja.newFunc(&{0xc0004648c0 getOwnPropertyDescriptor function(_target, key) { getOwnKeys.push(key); } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -5462,7 +5498,7 @@ compiler.go:433: > 6: goja._loadUndef({}) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 19: goja.putProp(getOwnPropertyDescriptor) - compiler.go:433: 20: *goja.newFunc(&{0xc000372d70 ownKeys function() { + compiler.go:433: 20: *goja.newFunc(&{0xc000464910 ownKeys function() { return ownKeysResult; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -5493,7 +5529,7 @@ compiler.go:433: 4: goja.loadDynamic(o) compiler.go:433: 5: goja.loadDynamic(Symbol) compiler.go:433: 6: goja.getProp(iterator) - compiler.go:433: 7: *goja.newFunc(&{0xc000373180 function() { + compiler.go:433: 7: *goja.newFunc(&{0xc000464c30 function() { return { next: function() { if (!this.flag) { @@ -5506,7 +5542,7 @@ } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._newObject({}) - compiler.go:433: > 2: *goja.newFunc(&{0xc0003731d0 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc000464c80 next function() { if (!this.flag) { this.flag = true; return {}; @@ -5561,7 +5597,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 6: goja.dupN(1) - compiler.go:433: 7: *goja.newMethod(&{{0xc000373e50 add get add() { + compiler.go:433: 7: *goja.newMethod(&{{0xc000020640 add get add() { getterCalled++; return null; } 0 true} 1}) @@ -5583,7 +5619,7 @@ compiler.go:433: 16: goja.loadDynamic(iterable) compiler.go:433: 17: goja.loadDynamic(Symbol) compiler.go:433: 18: goja.getProp(iterator) - compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0003d4000 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc000020690 () => { getIteratorCalled++ return { next: 1 @@ -6274,9 +6310,9 @@ compiler.go:433: 637: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSubstr (0.00s) +--- PASS: TestSubstr (0.02s) === RUN TestStringMatchSym - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4780 Prefix function Prefix(p) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464370 Prefix function Prefix(p) { this.p = p; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -6291,7 +6327,7 @@ compiler.go:433: 3: goja.getProp(prototype) compiler.go:433: 4: goja.loadDynamic(Symbol) compiler.go:433: 5: goja.getProp(match) - compiler.go:433: 6: *goja.newFunc(&{0xc0003d47d0 function(s) { + compiler.go:433: 6: *goja.newFunc(&{0xc0004643c0 function(s) { return s.substring(0, this.p.length) === this.p; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -6350,7 +6386,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestStringMatchSym (0.00s) === RUN TestStringMatchAllSym - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4af0 Prefix function Prefix(p) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464690 Prefix function Prefix(p) { this.p = p; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -6365,7 +6401,7 @@ compiler.go:433: 3: goja.getProp(prototype) compiler.go:433: 4: goja.loadDynamic(Symbol) compiler.go:433: 5: goja.getProp(matchAll) - compiler.go:433: 6: *goja.newFunc(&{0xc0003d4b90 function(s) { + compiler.go:433: 6: *goja.newFunc(&{0xc0004646e0 function(s) { return s.substring(0, this.p.length) === this.p; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -6424,7 +6460,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestStringMatchAllSym (0.00s) === RUN TestGenericSplitter - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5040 MyRegexp function MyRegexp(pattern, flags) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464c30 MyRegexp function MyRegexp(pattern, flags) { if (pattern instanceof MyRegexp) { pattern = pattern.wrapped; } @@ -6450,7 +6486,7 @@ compiler.go:433: 1: *goja.bindGlobal(&{[r res] [MyRegexp] [] [] false}) compiler.go:433: 2: goja.loadDynamic(MyRegexp) compiler.go:433: 3: goja.getProp(prototype) - compiler.go:433: 4: *goja.newFunc(&{0xc0003d5090 function() { + compiler.go:433: 4: *goja.newFunc(&{0xc000464c80 function() { return this.wrapped.exec.apply(this.wrapped, arguments); } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 0 1 0 1 true false}) @@ -6473,7 +6509,7 @@ compiler.go:433: 9: goja.getProp(prototype) compiler.go:433: 10: goja.loadVal({lastIndex}) compiler.go:433: 11: goja._newObject({}) - compiler.go:433: 12: *goja.newFunc(&{0xc0003d50e0 get function() { + compiler.go:433: 12: *goja.newFunc(&{0xc000464cd0 get function() { return this.wrapped.lastIndex; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -6483,7 +6519,7 @@ compiler.go:433: > 4: goja.getProp(lastIndex) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 13: goja.putProp(get) - compiler.go:433: 14: *goja.newFunc(&{0xc0003d5130 set function(v) { + compiler.go:433: 14: *goja.newFunc(&{0xc000464d20 set function(v) { this.wrapped.lastIndex = v; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -6503,7 +6539,7 @@ compiler.go:433: 21: goja.getProp(prototype) compiler.go:433: 22: goja.loadVal({flags}) compiler.go:433: 23: goja._newObject({}) - compiler.go:433: 24: *goja.newFunc(&{0xc0003d5180 get function() { + compiler.go:433: 24: *goja.newFunc(&{0xc000464d70 get function() { return this.wrapped.flags; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -6532,7 +6568,7 @@ compiler.go:433: 42: goja._setElemP({}) compiler.go:433: 43: goja.resolveVar1(r) compiler.go:433: 44: goja.loadDynamic(MyRegexp) - compiler.go:433: 45: *goja.newRegexp(&{0xc000397a10 }) + compiler.go:433: 45: *goja.newRegexp(&{0xc000251620 }) compiler.go:433: 46: goja._new(1) compiler.go:433: 47: goja._initValueP({}) compiler.go:433: 48: goja.resolveVar1(res) @@ -6566,7 +6602,7 @@ compiler.go:433: 76: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 5 ---- PASS: TestGenericSplitter (0.00s) +--- PASS: TestGenericSplitter (0.01s) === RUN TestStringIterSurrPair compiler.go:433: 0: *goja.bindGlobal(&{[lo hi pair string iterator result] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(lo) @@ -6660,22 +6696,22 @@ === RUN TestValueStringBuilder/concat_ASCII_importedUnicode === PAUSE TestValueStringBuilder/concat_ASCII_importedUnicode === CONT TestValueStringBuilder/substringASCII -=== CONT TestValueStringBuilder/concat_ASCII_importedUnicode -=== CONT TestValueStringBuilder/substringUnicodeASCII === CONT TestValueStringBuilder/substringASCIIUnicode === CONT TestValueStringBuilder/substringUnicode -=== CONT TestValueStringBuilder/substringASCIIPure === CONT TestValueStringBuilder/concatSubstringUnicodeASCII === CONT TestValueStringBuilder/concat_ASCII_importedASCII +=== CONT TestValueStringBuilder/substringUnicodeASCII +=== CONT TestValueStringBuilder/concat_ASCII_importedUnicode +=== CONT TestValueStringBuilder/substringASCIIPure --- PASS: TestValueStringBuilder (0.00s) --- PASS: TestValueStringBuilder/substringASCII (0.00s) - --- PASS: TestValueStringBuilder/concat_ASCII_importedUnicode (0.00s) --- PASS: TestValueStringBuilder/substringASCIIUnicode (0.00s) --- PASS: TestValueStringBuilder/substringUnicode (0.00s) - --- PASS: TestValueStringBuilder/substringUnicodeASCII (0.00s) - --- PASS: TestValueStringBuilder/substringASCIIPure (0.00s) --- PASS: TestValueStringBuilder/concatSubstringUnicodeASCII (0.00s) --- PASS: TestValueStringBuilder/concat_ASCII_importedASCII (0.00s) + --- PASS: TestValueStringBuilder/substringUnicodeASCII (0.00s) + --- PASS: TestValueStringBuilder/concat_ASCII_importedUnicode (0.00s) + --- PASS: TestValueStringBuilder/substringASCIIPure (0.00s) === RUN TestStringSplit compiler.go:433: 0: goja.loadDynamicCallee(assert) compiler.go:433: 1: goja.loadDynamicCallee(compareArray) @@ -6791,7 +6827,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNewUint16Array (0.00s) === RUN TestTypedArraysSpeciesConstructor - compiler.go:433: 0: *goja.newFunc(&{0xc000020b90 MyArray function MyArray() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4820 MyArray function MyArray() { var NewTarget = this.__proto__.constructor; return Reflect.construct(Uint16Array, arguments, NewTarget); } 0 true}) @@ -6850,7 +6886,7 @@ compiler.go:433: 39: goja.resolveVar1Strict(b) compiler.go:433: 40: goja.loadDynamic(a) compiler.go:433: 41: goja.getPropCallee(filter) - compiler.go:433: 42: *goja.newFunc(&{0xc000020c30 function() { + compiler.go:433: 42: *goja.newFunc(&{0xc0003a4870 function() { return true; } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -6900,7 +6936,7 @@ compiler.go:433: 84: goja._clearResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestTypedArraysSpeciesConstructor (0.00s) +--- PASS: TestTypedArraysSpeciesConstructor (0.01s) === RUN TestTypedArrayFromArrayBuffer compiler.go:433: 0: *goja.bindGlobal(&{[buf a16 a8] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(buf) @@ -7404,7 +7440,7 @@ compiler.go:433: 68: goja._clearResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArraySetNoOverlapDifSizeBackward (0.00s) +--- PASS: TestTypedArraySetNoOverlapDifSizeBackward (0.01s) === RUN TestTypedArraySetNoOverlapDifSizeDifBuffers compiler.go:433: 0: *goja.bindGlobal(&{[dstBuf dst src] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(dstBuf) @@ -7613,7 +7649,7 @@ compiler.go:433: 10: goja._initValueP({}) compiler.go:433: 11: goja.loadDynamic(a) compiler.go:433: 12: goja.getPropCallee(sort) - compiler.go:433: 13: *goja.newFunc(&{0xc0003d40a0 function(a, b) { return a - b; } 2 false}) + compiler.go:433: 13: *goja.newFunc(&{0xc000465090 function(a, b) { return a - b; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) compiler.go:433: > 1: goja.loadStackLex(-1) compiler.go:433: > 2: goja.loadStackLex(-2) @@ -7657,7 +7693,7 @@ compiler.go:433: 49: goja.jump(-29) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArraySortComparatorReturnValueFloats (0.00s) +--- PASS: TestTypedArraySortComparatorReturnValueFloats (0.01s) === RUN TestTypedArraySortComparatorReturnValueNegZero compiler.go:433: 0: *goja.bindGlobal(&{[a i] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(a) @@ -7671,7 +7707,7 @@ compiler.go:433: 9: goja._initValueP({}) compiler.go:433: 10: goja.loadDynamic(a) compiler.go:433: 11: goja.getPropCallee(sort) - compiler.go:433: 12: *goja.newFunc(&{0xc0003d46e0 function(a, b) { return a > b ? 0 : -0; } 2 false}) + compiler.go:433: 12: *goja.newFunc(&{0xc000465360 function(a, b) { return a > b ? 0 : -0; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) compiler.go:433: > 1: goja.loadStackLex(-1) compiler.go:433: > 2: goja.loadStackLex(-2) @@ -7737,7 +7773,7 @@ compiler.go:433: 0: goja.try({7 0}) compiler.go:433: 1: goja._clearResult({}) compiler.go:433: 2: goja._loadUndef({}) - compiler.go:433: 3: *goja.newFunc(&{0xc0003d4af0 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc000465860 function() { 'use strict'; delete Uint8Array.prototype.BYTES_PER_ELEMENT; } 0 true}) @@ -7791,7 +7827,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 6: goja.dupN(1) - compiler.go:433: 7: *goja.newMethod(&{{0xc0003d4fa0 set get set() { + compiler.go:433: 7: *goja.newMethod(&{{0xc000465cc0 set get set() { getterCalled++; return null; } 0 true} 1}) @@ -7813,7 +7849,7 @@ compiler.go:433: 16: goja.loadDynamic(iterable) compiler.go:433: 17: goja.loadDynamic(Symbol) compiler.go:433: 18: goja.getProp(iterator) - compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0003d4ff0 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc000465d10 () => { getIteratorCalled++ return { next: 1 @@ -7862,7 +7898,7 @@ compiler.go:433: 51: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestWeakMapGetAdderGetIteratorOrder (0.00s) +--- PASS: TestWeakMapGetAdderGetIteratorOrder (0.01s) === RUN TestWeakSetBasic compiler.go:433: 0: *goja.bindGlobal(&{[s o] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(s) @@ -8082,7 +8118,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 6: goja.dupN(1) - compiler.go:433: 7: *goja.newMethod(&{{0xc0003d5810 add get add() { + compiler.go:433: 7: *goja.newMethod(&{{0xc000020af0 add get add() { getterCalled++; return null; } 0 true} 1}) @@ -8104,7 +8140,7 @@ compiler.go:433: 16: goja.loadDynamic(iterable) compiler.go:433: 17: goja.loadDynamic(Symbol) compiler.go:433: 18: goja.getProp(iterator) - compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0003d5860 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc000020b90 () => { getIteratorCalled++ return { next: 1 @@ -8153,7 +8189,7 @@ compiler.go:433: 51: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestWeakSetGetAdderGetIteratorOrder (0.00s) +--- PASS: TestWeakSetGetAdderGetIteratorOrder (0.01s) === RUN TestEmptyProgram compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 @@ -8201,7 +8237,7 @@ compiler.go:433: 1: goja._saveResult({}) compiler.go:433: 2: *goja.enterBlock(&{map[x:0] 1 0}) compiler.go:433: 3: goja._loadUndef({}) - compiler.go:433: 4: *goja.newFunc(&{0xc0003721e0 function() { return eval("8; {let y = 9}")} 0 false}) + compiler.go:433: 4: *goja.newFunc(&{0xc000021720 function() { return eval("8; {let y = 9}")} 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:1073741825] 2 0 0 1 true true}) compiler.go:433: > 1: goja._boxThis({}) compiler.go:433: > 2: goja.initStash(0) @@ -8230,7 +8266,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestErrorProto (0.00s) === RUN TestThis1 - compiler.go:433: 0: *goja.newFunc(&{0xc000372690 independent function independent() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4000 independent function independent() { return this.prop; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -8263,7 +8299,7 @@ compiler.go:433: 2: goja._newObject({}) compiler.go:433: 3: goja.loadVal({37}) compiler.go:433: 4: goja.putProp(prop) - compiler.go:433: 5: *goja.newFunc(&{0xc000372910 f function() { + compiler.go:433: 5: *goja.newFunc(&{0xc0003a4280 f function() { return this.prop; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -8287,7 +8323,7 @@ compiler.go:433: 3: goja.getProp(prototype) compiler.go:433: 4: goja.loadVal({x}) compiler.go:433: 5: goja._newObject({}) - compiler.go:433: 6: *goja.newFunc(&{0xc000372b90 get function () { return this; } 0 true}) + compiler.go:433: 6: *goja.newFunc(&{0xc0003a46e0 get function () { return this; } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadStack(0) compiler.go:433: > 2: goja._ret({}) @@ -8309,7 +8345,7 @@ compiler.go:433: 3: goja.getProp(prototype) compiler.go:433: 4: goja.loadVal({x}) compiler.go:433: 5: goja._newObject({}) - compiler.go:433: 6: *goja.newFunc(&{0xc000372f50 get function () { return this; } 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc0003a4a00 get function () { return this; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._boxThis({}) compiler.go:433: > 2: goja.loadStack(0) @@ -8327,7 +8363,7 @@ --- PASS: TestThisNoStrict (0.00s) === RUN TestNestedFuncVarResolution compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000373450 outer function outer() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003a4cd0 outer function outer() { var v = 42; function inner() { return v; @@ -8339,7 +8375,7 @@ compiler.go:433: > 2: goja.initStackP(2) compiler.go:433: > 3: goja._loadCallee({}) compiler.go:433: > 4: goja.initStackP(2) - compiler.go:433: > 5: *goja.newFunc(&{0xc0003734a0 inner function inner() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0003a4d20 inner function inner() { return v; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -8358,7 +8394,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestNestedFuncVarResolution (0.00s) === RUN TestNestedFuncVarResolution1 - compiler.go:433: 0: *goja.newFunc(&{0xc0003739a0 outer function outer(argOuter) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5040 outer function outer(argOuter) { var called = 0; var inner = function(argInner) { if (arguments.length !== 1) { @@ -8377,7 +8413,7 @@ compiler.go:433: > 0: *goja.enterFunc(&{map[] 2 1 1 1 true false}) compiler.go:433: > 1: goja.loadVal({0}) compiler.go:433: > 2: goja.initStashP(1) - compiler.go:433: > 3: *goja.newFunc(&{0xc0003739f0 inner function(argInner) { + compiler.go:433: > 3: *goja.newFunc(&{0xc0003a5090 inner function(argInner) { if (arguments.length !== 1) { throw new Error(); } @@ -8438,7 +8474,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestNestedFuncVarResolution1 (0.00s) === RUN TestCallFewerArgs - compiler.go:433: 0: *goja.newFunc(&{0xc000373d60 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5360 A function A(a, b, c) { return String(a) + " " + String(b) + " " + String(c); } 3 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 3}) @@ -8468,7 +8504,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestCallFewerArgs (0.00s) === RUN TestCallFewerArgsClosureNoArgs - compiler.go:433: 0: *goja.newFunc(&{0xc0003781e0 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5630 A function A(a, b, c) { var y = a; x = function() { return " " + y }; return String(a) + " " + String(b) + " " + String(c); @@ -8477,7 +8513,7 @@ compiler.go:433: > 1: goja.loadStackLex(-1) compiler.go:433: > 2: goja.initStashP(0) compiler.go:433: > 3: goja.resolveVar1(x) - compiler.go:433: > 4: *goja.newFunc(&{0xc000378230 x function() { return " " + y } 0 false}) + compiler.go:433: > 4: *goja.newFunc(&{0xc0003a5680 x function() { return " " + y } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadVal({ }) compiler.go:433: >> 2: goja.loadStash(0) @@ -8513,7 +8549,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestCallFewerArgsClosureNoArgs (0.00s) === RUN TestCallFewerArgsClosureArgs - compiler.go:433: 0: *goja.newFunc(&{0xc0003785f0 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5a40 A function A(a, b, c) { var y = b; x = function() { return " " + a + " " + y }; return String(a) + " " + String(b) + " " + String(c); @@ -8522,7 +8558,7 @@ compiler.go:433: > 1: goja.loadStashLex(1) compiler.go:433: > 2: goja.initStashP(3) compiler.go:433: > 3: goja.resolveVar1(x) - compiler.go:433: > 4: *goja.newFunc(&{0xc000378640 x function() { return " " + a + " " + y } 0 false}) + compiler.go:433: > 4: *goja.newFunc(&{0xc0003a5a90 x function() { return " " + a + " " + y } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadVal({ }) compiler.go:433: >> 2: goja.loadStashLex(0) @@ -8560,9 +8596,9 @@ compiler.go:433: 9: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestCallFewerArgsClosureArgs (0.00s) +--- PASS: TestCallFewerArgsClosureArgs (0.01s) === RUN TestCallMoreArgs - compiler.go:433: 0: *goja.newFunc(&{0xc000378910 A function A(a, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4230 A function A(a, b) { var c = 4; return a - b + c; } 2 false}) @@ -8586,7 +8622,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestCallMoreArgs (0.00s) === RUN TestCallMoreArgsDynamic - compiler.go:433: 0: *goja.newFunc(&{0xc000378b40 A function A(a, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a45f0 A function A(a, b) { var c = 4; if (false) { eval(""); @@ -8617,7 +8653,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestCallMoreArgsDynamic (0.00s) === RUN TestCallLessArgsDynamic - compiler.go:433: 0: *goja.newFunc(&{0xc000378f00 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a49b0 A function A(a, b, c) { // Make it stashful function B() { return a; @@ -8625,7 +8661,7 @@ return String(a) + " " + String(b) + " " + String(c); } 3 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 3 1 3 1 true false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc000378f50 B function B() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003a4a00 B function B() { return a; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -8658,7 +8694,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestCallLessArgsDynamic (0.00s) === RUN TestCallLessArgsDynamicLocalVar - compiler.go:433: 0: *goja.newFunc(&{0xc0003791d0 f function f(param) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4c80 f function f(param) { var a = 42; if (false) { eval(""); @@ -8704,7 +8740,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNativeCall (0.00s) === RUN TestJSCall - compiler.go:433: 0: *goja.newFunc(&{0xc0003795e0 getter function getter() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5090 getter function getter() { return this.x; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -8737,7 +8773,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestJSCall (0.00s) === RUN TestLoop1 - compiler.go:433: 0: *goja.newFunc(&{0xc0003798b0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5360 A function A() { var x = 1; for (var i = 0; i < 1; i++) { var x = 2; @@ -8769,7 +8805,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestLoop1 (0.00s) === RUN TestLoopBreak - compiler.go:433: 0: *goja.newFunc(&{0xc000379b30 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a55e0 A function A() { var x = 1; for (var i = 0; i < 1; i++) { break; @@ -8803,7 +8839,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestLoopBreak (0.00s) === RUN TestForLoopOptionalExpr - compiler.go:433: 0: *goja.newFunc(&{0xc000378230 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a58b0 A function A() { var x = 1; for (;;) { break; @@ -8848,7 +8884,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestBlockBreak (0.00s) === RUN TestTry - compiler.go:433: 0: *goja.newFunc(&{0xc0003785a0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5d10 A function A() { var x = 1; try { x = 2; @@ -8895,7 +8931,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestTryOptionalCatchBinding (0.00s) === RUN TestTryCatch - compiler.go:433: 0: *goja.newFunc(&{0xc000378910 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004641e0 A function A() { var x; try { throw 4; @@ -8924,7 +8960,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestTryCatch (0.00s) === RUN TestTryCatchDirectEval - compiler.go:433: 0: *goja.newFunc(&{0xc000378b40 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004644b0 A function A() { var x; try { throw 4; @@ -8959,7 +8995,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestTryCatchDirectEval (0.00s) === RUN TestTryExceptionInCatch - compiler.go:433: 0: *goja.newFunc(&{0xc000378eb0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000464820 A function A() { var x; try { throw 4; @@ -9294,7 +9330,7 @@ compiler.go:433: 54: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTryBreakOuterFinallyContinue (0.00s) +--- PASS: TestTryBreakOuterFinallyContinue (0.01s) === RUN TestTryIllegalContinueWithFinallyOverride --- PASS: TestTryIllegalContinueWithFinallyOverride (0.00s) === RUN TestTryIllegalContinueWithFinallyOverrideNoLabel @@ -9312,7 +9348,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestTryNoResult (0.00s) === RUN TestCatchLexicalEnv - compiler.go:433: 0: *goja.newFunc(&{0xc000020f50 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0000206e0 F function F() { try { throw 1; } catch (e) { @@ -9340,7 +9376,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestCatchLexicalEnv (0.00s) === RUN TestThrowType - compiler.go:433: 0: *goja.newFunc(&{0xc0000214a0 Exception function Exception(message) { + compiler.go:433: 0: *goja.newFunc(&{0xc0000209b0 Exception function Exception(message) { this.message = message; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -9350,7 +9386,7 @@ compiler.go:433: > 4: goja.setPropP(message) compiler.go:433: > 5: goja._loadUndef({}) compiler.go:433: > 6: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0000214f0 A function A() { + compiler.go:433: 1: *goja.newFunc(&{0xc000020a00 A function A() { try { throw new Exception("boo!"); } catch(e) { @@ -9397,7 +9433,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestThrowType (0.00s) === RUN TestThrowConstructorName - compiler.go:433: 0: *goja.newFunc(&{0xc000021810 Exception function Exception(message) { + compiler.go:433: 0: *goja.newFunc(&{0xc000020d70 Exception function Exception(message) { this.message = message; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -9407,7 +9443,7 @@ compiler.go:433: > 4: goja.setPropP(message) compiler.go:433: > 5: goja._loadUndef({}) compiler.go:433: > 6: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000021860 A function A() { + compiler.go:433: 1: *goja.newFunc(&{0xc000020dc0 A function A() { try { throw new Exception("boo!"); } catch(e) { @@ -9441,7 +9477,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestThrowConstructorName (0.00s) === RUN TestThrowNativeConstructorName - compiler.go:433: 0: *goja.newFunc(&{0xc000021a90 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020ff0 A function A() { try { throw new TypeError(); } catch(e) { @@ -9490,7 +9526,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEmptyTryNoCatch (0.00s) === RUN TestTryReturnFromCatch - compiler.go:433: 0: *goja.newFunc(&{0xc000021ea0 f function f(o) { + compiler.go:433: 0: *goja.newFunc(&{0xc000021680 f function f(o) { var x = 42; function innerf(o) { @@ -9504,7 +9540,7 @@ return innerf(o); } 1 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 1 1 1 false false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc000021ef0 innerf function innerf(o) { + compiler.go:433: > 1: *goja.newFunc(&{0xc0000216d0 innerf function innerf(o) { try { throw o; } catch (e) { @@ -9636,7 +9672,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestIfMultipleLabels (0.00s) === RUN TestBreakOutOfTry - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4ff0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050a730 A function A() { var x = 1; B: { try { @@ -9677,7 +9713,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestBreakOutOfTry (0.00s) === RUN TestReturnOutOfTryNested - compiler.go:433: 0: *goja.newFunc(&{0xc0003d52c0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050aa00 A function A() { function nested() { try { return 1; @@ -9688,7 +9724,7 @@ return nested(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0003d5310 nested function nested() { + compiler.go:433: > 1: *goja.newFunc(&{0xc00050aa50 nested function nested() { try { return 1; } catch(e) { @@ -9726,7 +9762,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestReturnOutOfTryNested (0.00s) === RUN TestReturnOutOfTryWithFinally - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5540 test function test() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050ac80 test function test() { try { return 'Hello, world!'; } finally { @@ -9756,7 +9792,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestReturnOutOfTryWithFinally (0.00s) === RUN TestContinueLoop - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5900 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050af00 A function A() { var r = 0; for (var i = 0; i < 5; i++) { if (i > 1) { @@ -9797,7 +9833,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestContinueLoop (0.00s) === RUN TestContinueOutOfTry - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5b80 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050b180 A function A() { var r = 0; for (var i = 0; i < 5; i++) { try { @@ -9853,7 +9889,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestContinueOutOfTry (0.00s) === RUN TestThisInCatch - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5e50 O function O() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050b5e0 O function O() { try { f(); } catch (e) { @@ -9877,7 +9913,7 @@ compiler.go:433: > 14: goja.leaveTry({}) compiler.go:433: > 15: goja._loadUndef({}) compiler.go:433: > 16: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d5ea0 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc00050b720 f function f() { throw "ex"; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -9921,7 +9957,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNestedTry (0.00s) === RUN TestNestedTryInStashlessFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000372320 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050be50 f function f() { var ex1, ex2; try { throw "ex1"; @@ -9978,7 +10014,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEvalLexicalDecl (0.00s) === RUN TestEvalInCatchInStashlessFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000372730 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030e370 f function f() { var ex; try { throw "ex1"; @@ -10013,7 +10049,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestEvalInCatchInStashlessFunc (0.00s) === RUN TestCatchClosureInStashlessFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000372b40 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030e780 f function f() { var ex; try { throw "ex1"; @@ -10029,7 +10065,7 @@ compiler.go:433: > 3: goja._throw({}) compiler.go:433: > 4: goja.jump(8) compiler.go:433: > 5: *goja.enterCatchBlock(&{map[] 1 0}) - compiler.go:433: > 6: *goja.newFunc(&{0xc000372b90 function() { + compiler.go:433: > 6: *goja.newFunc(&{0xc00030e7d0 function() { return er1; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -10053,7 +10089,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestCatchClosureInStashlessFunc (0.00s) === RUN TestCatchVarNotUsedInStashlessFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000372ff0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030ea50 f function f() { var ex; try { throw "ex1"; @@ -10082,7 +10118,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestCatchVarNotUsedInStashlessFunc (0.00s) === RUN TestNew - compiler.go:433: 0: *goja.newFunc(&{0xc0003733b0 O function O() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030ec80 O function O() { this.x = 42; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -10101,7 +10137,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNew (0.00s) === RUN TestStringConstructor - compiler.go:433: 0: *goja.newFunc(&{0xc0003737c0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030eeb0 F function F() { return String(33) + " " + String("cows"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -10123,7 +10159,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestStringConstructor (0.00s) === RUN TestError - compiler.go:433: 0: *goja.newFunc(&{0xc000373a40 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030f0e0 F function F() { return new Error("test"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -10150,7 +10186,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestError (0.00s) === RUN TestTypeError - compiler.go:433: 0: *goja.newFunc(&{0xc000373d60 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030f360 F function F() { return new TypeError("test"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -10184,7 +10220,7 @@ compiler.go:433: 4: goja.putProp(x) compiler.go:433: 5: goja._initValueP({}) compiler.go:433: 6: goja.loadDynamic(o) - compiler.go:433: 7: *goja.newFunc(&{0xc0002c4190 function() { + compiler.go:433: 7: *goja.newFunc(&{0xc00030f5e0 function() { return String(this.x); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -10212,7 +10248,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestToString (0.00s) === RUN TestEvalOrder - compiler.go:433: 0: *goja.newFunc(&{0xc0002c45a0 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030f9f0 F1 function F1() { trace += "First!"; return o; } 0 false}) @@ -10224,7 +10260,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadDynamic(o) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0002c45f0 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc00030fa40 F2 function F2() { trace += "Second!"; return "f"; } 0 false}) @@ -10236,7 +10272,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadVal({f}) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 2: *goja.newFunc(&{0xc0002c4640 F3 function F3() { + compiler.go:433: 2: *goja.newFunc(&{0xc00030fa90 F3 function F3() { trace += "Third!"; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -10250,7 +10286,7 @@ compiler.go:433: 3: *goja.bindGlobal(&{[o trace rv] [F1 F2 F3] [] [] false}) compiler.go:433: 4: goja.resolveVar1(o) compiler.go:433: 5: goja._newObject({}) - compiler.go:433: 6: *goja.newFunc(&{0xc0002c4690 f function() {return 42} 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc00030fae0 f function() {return 42} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({42}) compiler.go:433: > 2: goja._ret({}) @@ -10282,7 +10318,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEvalOrder (0.00s) === RUN TestPostfixIncBracket - compiler.go:433: 0: *goja.newFunc(&{0xc0002c4960 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc00030fdb0 F1 function F1() { trace += "First!"; return o; } 0 false}) @@ -10294,7 +10330,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadDynamic(o) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0002c49b0 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc00030fe00 F2 function F2() { trace += "Second!"; return "x"; } 0 false}) @@ -10340,7 +10376,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestPostfixIncBracket (0.00s) === RUN TestPostfixIncDot - compiler.go:433: 0: *goja.newFunc(&{0xc0002c4c30 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398140 F1 function F1() { trace += "First!"; return o; } 0 false}) @@ -10383,7 +10419,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestPostfixIncDot (0.00s) === RUN TestPrefixIncBracket - compiler.go:433: 0: *goja.newFunc(&{0xc0002c4f00 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398410 F1 function F1() { trace += "First!"; return o; } 0 false}) @@ -10395,7 +10431,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadDynamic(o) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0002c4f50 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc000398460 F2 function F2() { trace += "Second!"; return "x"; } 0 false}) @@ -10438,7 +10474,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestPrefixIncBracket (0.00s) === RUN TestPrefixIncDot - compiler.go:433: 0: *goja.newFunc(&{0xc0002c51d0 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003986e0 F1 function F1() { trace += "First!"; return o; } 0 false}) @@ -10482,7 +10518,7 @@ compiler.go:433: 0: *goja.bindGlobal(&{[object y ok] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(object) compiler.go:433: 2: goja._newObject({}) - compiler.go:433: 3: *goja.newFunc(&{0xc0002c5400 valueOf function() {return 1} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc000398910 valueOf function() {return 1} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({1}) compiler.go:433: > 2: goja._ret({}) @@ -10522,14 +10558,14 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestPropAcc1 (0.00s) === RUN TestEvalDirect - compiler.go:433: 0: *goja.newFunc(&{0xc0002c5810 foo function foo(){ rv = true; } 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc000398d20 foo function foo(){ rv = true; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.resolveVar1(rv) compiler.go:433: > 2: goja.loadVal({true}) compiler.go:433: > 3: goja._putValueP({}) compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0002c5860 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc000398d70 f function f() { try { eval("o.bar( foo() );"); } catch (e) { @@ -10581,7 +10617,7 @@ compiler.go:433: 3: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestEvalFunctionDecl (0.00s) +--- PASS: TestEvalFunctionDecl (0.01s) === RUN TestEvalFunctionExpr compiler.go:433: 0: goja._loadUndef({}) compiler.go:433: 1: goja.loadDynamicCallee(eval) @@ -10593,7 +10629,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEvalFunctionExpr (0.00s) === RUN TestEvalDirectScope - compiler.go:433: 0: *goja.newFunc(&{0xc000336410 testcase function testcase() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398460 testcase function testcase() { var __10_4_2_1_3 = "str1"; try { throw "error"; @@ -10638,7 +10674,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestEvalDirectScope (0.00s) === RUN TestEvalDirectScope1 - compiler.go:433: 0: *goja.newFunc(&{0xc000336780 testcase function testcase() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003987d0 testcase function testcase() { var __10_4_2_1_5 = "str1"; var r = eval("\ var __10_4_2_1_5 = \'str2\'; \ @@ -10669,7 +10705,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestEvalDirectScope1 (0.00s) === RUN TestEvalDirectCreateBinding - compiler.go:433: 0: *goja.newFunc(&{0xc000336b90 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398be0 f function f() { eval("var x = true"); return x; } 0 false}) @@ -10717,7 +10753,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestEvalDirectCreateBinding (0.00s) === RUN TestEvalDirectCreateBinding1 - compiler.go:433: 0: *goja.newFunc(&{0xc000336fa0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398ff0 f function f() { eval("let x = 1; var y = 2; function f1() {return x};"); assert.throws(ReferenceError, function() { x }); return ""+y+f1(); @@ -10734,7 +10770,7 @@ compiler.go:433: > 9: goja.loadDynamic(assert) compiler.go:433: > 10: goja.getPropCallee(throws) compiler.go:433: > 11: goja.loadDynamic(ReferenceError) - compiler.go:433: > 12: *goja.newFunc(&{0xc000336ff0 function() { x } 0 false}) + compiler.go:433: > 12: *goja.newFunc(&{0xc000399040 function() { x } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadDynamic(x) compiler.go:433: >> 2: goja._pop({}) @@ -10757,7 +10793,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestEvalDirectCreateBinding1 (0.00s) === RUN TestEvalDirectCreateBinding3 - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2410 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000399630 f function f() { let x; try { eval("var y=1, x=2"); @@ -10830,7 +10866,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEvalFuncDecl (0.00s) === RUN TestGetAfterSet - compiler.go:433: 0: *goja.newFunc(&{0xc0006b26e0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000502370 f function f() { var x = 1; return x; } 0 false}) @@ -10993,7 +11029,7 @@ compiler.go:433: 23: goja.jeqP(-19) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDoWhileLoopRet (0.00s) +--- PASS: TestDoWhileLoopRet (0.01s) === RUN TestDoWhileContinueRet compiler.go:433: 0: *goja.bindGlobal(&{[i] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(i) @@ -11093,7 +11129,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestInstanceof (0.00s) === RUN TestStrictAssign - compiler.go:433: 0: *goja.newFunc(&{0xc0006b3860 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc000503400 F function F() { called = true; return 1; } 0 true}) @@ -11131,7 +11167,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestStrictAssign (0.00s) === RUN TestStrictScope - compiler.go:433: 0: *goja.newFunc(&{0xc0006b3a90 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc000503630 F function F() { 'use strict'; x = 1; } 0 true}) @@ -11234,7 +11270,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestCallGlobalObject (0.00s) === RUN TestFuncLength - compiler.go:433: 0: *goja.newFunc(&{0xc000336140 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc000503c20 F function F(x, y) { } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -11262,7 +11298,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNativeFuncLength (0.00s) === RUN TestArguments - compiler.go:433: 0: *goja.newFunc(&{0xc0003364b0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4050 F function F() { return arguments.length + " " + arguments[1]; } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 0 1 0 1 true false}) @@ -11288,7 +11324,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArguments (0.00s) === RUN TestArgumentsPut - compiler.go:433: 0: *goja.newFunc(&{0xc000336730 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a42d0 F function F(x, y) { arguments[0] -= arguments[1]; return x; } 2 false}) @@ -11317,7 +11353,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArgumentsPut (0.00s) === RUN TestArgumentsPutStrict - compiler.go:433: 0: *goja.newFunc(&{0xc0003369b0 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a46e0 F function F(x, y) { 'use strict'; arguments[0] -= arguments[1]; return x; @@ -11347,7 +11383,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArgumentsPutStrict (0.00s) === RUN TestArgumentsExtra - compiler.go:433: 0: *goja.newFunc(&{0xc000336c80 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a49b0 F function F(x, y) { return arguments[2]; } 2 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 2 1 2 1 true false}) @@ -11368,7 +11404,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArgumentsExtra (0.00s) === RUN TestArgumentsExist - compiler.go:433: 0: *goja.newFunc(&{0xc000336f00 F function F(x, arguments) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4c30 F function F(x, arguments) { return arguments; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -11384,7 +11420,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArgumentsExist (0.00s) === RUN TestArgumentsDelete - compiler.go:433: 0: *goja.newFunc(&{0xc000337180 f function f(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4e60 f function f(x) { delete arguments[0]; arguments[0] = 42; return x; @@ -11411,7 +11447,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArgumentsDelete (0.00s) === RUN TestArgumentsInEval - compiler.go:433: 0: *goja.newFunc(&{0xc000337450 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5130 f function f() { return eval("arguments"); } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:1073741825] 2 0 0 1 true true}) @@ -11434,7 +11470,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArgumentsInEval (0.00s) === RUN TestArgumentsRedeclareInEval - compiler.go:433: 0: *goja.newFunc(&{0xc0003377c0 f function f(p = eval("var arguments = 'param'"), arguments) {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0003a54a0 f function f(p = eval("var arguments = 'param'"), arguments) {} 0 false}) compiler.go:433: > 0: *goja.enterFunc1(&{map[ this:1073741826 arguments:1 p:0] 3 2 0 1 true}) compiler.go:433: > 1: goja._boxThis({}) compiler.go:433: > 2: goja.loadStack(0) @@ -11485,7 +11521,7 @@ compiler.go:433: 3: goja.initGlobalP(oldArguments) compiler.go:433: 4: goja.loadVal({0}) compiler.go:433: 5: goja.initGlobalP(count) - compiler.go:433: 6: *goja.newArrowFunc(&{{0xc000337b30 f (p = eval("var arguments = 'param'"), q = () => arguments) => { + compiler.go:433: 6: *goja.newArrowFunc(&{{0xc0003a5810 f (p = eval("var arguments = 'param'"), q = () => arguments) => { var arguments = "local"; assert.sameValue(arguments, "local", "arguments"); assert.sameValue(q(), "param", "q"); @@ -11500,7 +11536,7 @@ compiler.go:433: > 6: goja.initStashP(0) compiler.go:433: > 7: goja.loadStackLex(-2) compiler.go:433: > 8: goja.jdefP(3) - compiler.go:433: > 9: *goja.newArrowFunc(&{{0xc000337b80 () => arguments 0 false}}) + compiler.go:433: > 9: *goja.newArrowFunc(&{{0xc0003a5860 () => arguments 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadDynamic(arguments) compiler.go:433: >> 2: goja._ret({}) @@ -11552,7 +11588,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArgumentsRedeclareArrow (0.00s) === RUN TestEvalParamWithDef - compiler.go:433: 0: *goja.newFunc(&{0xc000337e50 f function f(param = 0) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5b30 f function f(param = 0) { eval("var param = 1"); return param; } 0 false}) @@ -11580,7 +11616,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestEvalParamWithDef (0.00s) === RUN TestArgumentsRedefinedAsLetDyn - compiler.go:433: 0: *goja.newFunc(&{0xc000020910 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5ea0 f function f() { let arguments; eval(""); // force dynamic scope return arguments; @@ -11630,7 +11666,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestWith (0.00s) === RUN TestWithInFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000020ff0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004645a0 F function F() { var b = 1; var c = 0; var o = {a: 40, c: 1}; @@ -11671,7 +11707,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestWithInFunc (0.00s) === RUN TestAssignNonExtendable - compiler.go:433: 0: *goja.newFunc(&{0xc0000214f0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc000464820 F function F() { this.x = 1; } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -11700,7 +11736,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestAssignNonExtendable (0.00s) === RUN TestAssignNonExtendable1 - compiler.go:433: 0: *goja.newFunc(&{0xc000021720 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc000464aa0 F function F() { } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) @@ -11818,7 +11854,7 @@ === RUN TestFunction1 compiler.go:433: 0: *goja.bindGlobal(&{[f] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(f) - compiler.go:433: 2: *goja.newFunc(&{0xc0003d4870 f1 function f1(count) { + compiler.go:433: 2: *goja.newFunc(&{0xc000465900 f1 function f1(count) { if (count == 0) { return true; } @@ -11851,7 +11887,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFunction1 (0.00s) === RUN TestFunction2 - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4be0 f function f(count) { + compiler.go:433: 0: *goja.newFunc(&{0xc000465bd0 f function f(count) { trace += "f("+count+")"; if (count == 0) { return; @@ -11880,7 +11916,7 @@ compiler.go:433: > 19: goja._sub({}) compiler.go:433: > 20: goja.call(1) compiler.go:433: > 21: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d4c30 f1 function f1() { + compiler.go:433: 1: *goja.newFunc(&{0xc000465c20 f1 function f1() { trace += "f1"; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -11932,7 +11968,7 @@ compiler.go:433: 6: goja._initValueP({}) compiler.go:433: 7: goja.resolveVar1(o) compiler.go:433: 8: goja._newObject({}) - compiler.go:433: 9: *goja.newMethod(&{{0xc0003d51d0 x get x() {getterCalled = true} 0 false} 1}) + compiler.go:433: 9: *goja.newMethod(&{{0xc0000208c0 x get x() {getterCalled = true} 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.resolveVar1(getterCalled) compiler.go:433: > 2: goja.loadVal({true}) @@ -11940,7 +11976,7 @@ compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 10: *goja.defineGetterKeyed(&{x true}) - compiler.go:433: 11: *goja.newMethod(&{{0xc0003d5220 x set x(_) {setterCalled = true} 1 false} 1}) + compiler.go:433: 11: *goja.newMethod(&{{0xc000020910 x set x(_) {setterCalled = true} 1 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja.resolveVar1(setterCalled) compiler.go:433: > 2: goja.loadVal({true}) @@ -12046,7 +12082,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestConstWhileThrow (0.00s) === RUN TestDupParams - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5b80 F function F(x, y, x) { + compiler.go:433: 0: *goja.newFunc(&{0xc000021360 F function F(x, y, x) { return x; } 3 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 3}) @@ -12062,7 +12098,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestDupParams (0.00s) === RUN TestUseUnsuppliedParam - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5db0 getMessage function getMessage(message) { + compiler.go:433: 0: *goja.newFunc(&{0xc000021680 getMessage function getMessage(message) { if (message === undefined) { message = ''; } @@ -12092,7 +12128,7 @@ === RUN TestForInLetWithInitializer --- PASS: TestForInLetWithInitializer (0.00s) === RUN TestForInLoop - compiler.go:433: 0: *goja.newFunc(&{0xc000372140 Proto function Proto() {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc000021cc0 Proto function Proto() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -12189,7 +12225,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEmptyDoWhile (0.00s) === RUN TestSwitch - compiler.go:433: 0: *goja.newFunc(&{0xc0003727d0 F function F(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004c2280 F function F(x) { var i = 0; switch (x) { case 0: @@ -12275,7 +12311,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestSwitch (0.00s) === RUN TestSwitchDefFirst - compiler.go:433: 0: *goja.newFunc(&{0xc000372a00 F function F(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004c24b0 F function F(x) { var i = 0; switch (x) { default: @@ -12456,7 +12492,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestSwitchResult2 (0.00s) === RUN TestSwitchResultJumpIntoEmptyEval - compiler.go:433: 0: *goja.newFunc(&{0xc000373450 t function t(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004c2b40 t function t(x) { return eval("switch(x) { case 1: 2; break; case 2: let x = 1; case 3: x+2; break; case 4: default: 9}"); } 1 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741825 arguments:1073741826 x:1073741824] 3 0 1 1 true true}) @@ -12759,7 +12795,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestGetOwnPropertyNames (0.00s) === RUN TestArrayLiteral - compiler.go:433: 0: *goja.newFunc(&{0xc000322dc0 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050a190 F1 function F1() { f1Called = true; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -12768,7 +12804,7 @@ compiler.go:433: > 3: goja._putValueP({}) compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000322e10 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc00050a1e0 F2 function F2() { f2Called = true; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -12777,7 +12813,7 @@ compiler.go:433: > 3: goja._putValueP({}) compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) - compiler.go:433: 2: *goja.newFunc(&{0xc000322e60 F3 function F3() { + compiler.go:433: 2: *goja.newFunc(&{0xc00050a230 F3 function F3() { f3Called = true; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -12845,7 +12881,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArrayLiteral (0.00s) === RUN TestJumpOutOfReturn - compiler.go:433: 0: *goja.newFunc(&{0xc0003221e0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050a460 f function f() { var a; if (a == 0) { return true; @@ -12868,7 +12904,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestJumpOutOfReturn (0.00s) === RUN TestSwitchJumpOutOfReturn - compiler.go:433: 0: *goja.newFunc(&{0xc000322410 f function f(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc00050a690 f function f(x) { switch(x) { case 0: break; @@ -13056,7 +13092,7 @@ compiler.go:433: 9: goja.loadDynamic(scope) compiler.go:433: 10: goja._enterWith({}) compiler.go:433: 11: goja.resolveVar1(f) - compiler.go:433: 12: *goja.newFunc(&{0xc000322b90 f function() { + compiler.go:433: 12: *goja.newFunc(&{0xc00050adc0 f function() { x *= (delete scope.x, 2); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -13107,7 +13143,7 @@ === RUN TestDeleteArguments --- PASS: TestDeleteArguments (0.00s) === RUN TestReturnUndefined - compiler.go:433: 0: *goja.newFunc(&{0xc000323270 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050b360 f function f() { return x; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -13302,7 +13338,7 @@ compiler.go:433: 54: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestForOfArray (0.00s) +--- PASS: TestForOfArray (0.01s) === RUN TestForOfReturn compiler.go:433: 0: *goja.bindGlobal(&{[callCount iterationCount iterable x] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(callCount) @@ -13316,7 +13352,7 @@ compiler.go:433: 9: goja._initValueP({}) compiler.go:433: 10: goja.resolveVar1(x) compiler.go:433: 11: goja._newObject({}) - compiler.go:433: 12: *goja.newMethod(&{{0xc0006b2230 attr set attr(_) { + compiler.go:433: 12: *goja.newMethod(&{{0xc000398960 attr set attr(_) { throw new Test262Error(); } 1 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -13330,7 +13366,7 @@ compiler.go:433: 15: goja.loadDynamic(iterable) compiler.go:433: 16: goja.loadDynamic(Symbol) compiler.go:433: 17: goja.getProp(iterator) - compiler.go:433: 18: *goja.newFunc(&{0xc0006b2280 function() { + compiler.go:433: 18: *goja.newFunc(&{0xc0003989b0 function() { return { next: function() { return { done: false, value: 0 }; @@ -13342,7 +13378,7 @@ } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._newObject({}) - compiler.go:433: > 2: *goja.newFunc(&{0xc0006b22d0 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc000398a00 next function() { return { done: false, value: 0 }; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13353,7 +13389,7 @@ compiler.go:433: >> 5: goja.putProp(value) compiler.go:433: >> 6: goja._ret({}) compiler.go:433: > 3: goja.putProp(next) - compiler.go:433: > 4: *goja.newFunc(&{0xc0006b2320 return function() { + compiler.go:433: > 4: *goja.newFunc(&{0xc000398a50 return function() { callCount += 1; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13370,7 +13406,7 @@ compiler.go:433: 20: goja.loadDynamic(assert) compiler.go:433: 21: goja.getPropCallee(throws) compiler.go:433: 22: goja.loadDynamic(Test262Error) - compiler.go:433: 23: *goja.newFunc(&{0xc0006b2370 function() { + compiler.go:433: 23: *goja.newFunc(&{0xc000398aa0 function() { for (x.attr of iterable) { iterationCount += 1; } @@ -13423,7 +13459,7 @@ compiler.go:433: 7: goja.loadDynamic(iterable) compiler.go:433: 8: goja.loadDynamic(Symbol) compiler.go:433: 9: goja.getProp(iterator) - compiler.go:433: 10: *goja.newFunc(&{0xc0006b2870 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc000398f00 function() { return { next: function() { return { done: false, value: null }; @@ -13435,7 +13471,7 @@ } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._newObject({}) - compiler.go:433: > 2: *goja.newFunc(&{0xc0006b28c0 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc000398f50 next function() { return { done: false, value: null }; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13446,7 +13482,7 @@ compiler.go:433: >> 5: goja.putProp(value) compiler.go:433: >> 6: goja._ret({}) compiler.go:433: > 3: goja.putProp(next) - compiler.go:433: > 4: *goja.newMethod(&{{0xc0006b2910 return get return() { + compiler.go:433: > 4: *goja.newMethod(&{{0xc000398fa0 return get return() { throw new Test262Error(); } 0 false} 1}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13461,7 +13497,7 @@ compiler.go:433: 12: goja.loadDynamic(assert) compiler.go:433: 13: goja.getPropCallee(throws) compiler.go:433: 14: goja.loadDynamic(Test262Error) - compiler.go:433: 15: *goja.newFunc(&{0xc0006b2960 function() { + compiler.go:433: 15: *goja.newFunc(&{0xc000398ff0 function() { for (var x of iterable) { iterationCount += 1; break; @@ -13498,7 +13534,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestForOfReturn1 (0.00s) === RUN TestForOfLet - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2b40 f function f() {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0003991d0 f function f() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -13583,7 +13619,7 @@ compiler.go:433: 7: goja.loadDynamic(iterable) compiler.go:433: 8: goja.loadDynamic(Symbol) compiler.go:433: 9: goja.getProp(iterator) - compiler.go:433: 10: *goja.newFunc(&{0xc0006b3360 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc0003a4960 function() { return { next: function() { return { done: ++iterationCount > 2, value: null }; @@ -13595,7 +13631,7 @@ } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._newObject({}) - compiler.go:433: > 2: *goja.newFunc(&{0xc0006b33b0 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc0003a49b0 next function() { return { done: ++iterationCount > 2, value: null }; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13615,7 +13651,7 @@ compiler.go:433: >> 14: goja.putProp(value) compiler.go:433: >> 15: goja._ret({}) compiler.go:433: > 3: goja.putProp(next) - compiler.go:433: > 4: *goja.newMethod(&{{0xc0006b3400 return get return() { + compiler.go:433: > 4: *goja.newMethod(&{{0xc0003a4a00 return get return() { throw new Test262Error(); } 0 false} 1}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13643,7 +13679,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestIteratorReturnNormal (0.00s) === RUN TestIteratorReturnErrorNested - compiler.go:433: 0: *goja.newFunc(&{0xc0006b37c0 iter function iter(id) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4dc0 iter function iter(id) { return function() { var count = 0; return { @@ -13661,7 +13697,7 @@ } } 1 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 1 1 true false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0006b3810 function() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003a4e10 function() { var count = 0; return { next: function () { @@ -13680,7 +13716,7 @@ compiler.go:433: >> 1: goja.loadVal({0}) compiler.go:433: >> 2: goja.initStashP(0) compiler.go:433: >> 3: goja._newObject({}) - compiler.go:433: >> 4: *goja.newFunc(&{0xc0006b3860 next function () { + compiler.go:433: >> 4: *goja.newFunc(&{0xc0003a4e60 next function () { return { value: null, done: ++count > 2 @@ -13702,7 +13738,7 @@ compiler.go:433: >>> 13: goja.putProp(done) compiler.go:433: >>> 14: goja._ret({}) compiler.go:433: >> 5: goja.putProp(next) - compiler.go:433: >> 6: *goja.newFunc(&{0xc0006b38b0 return function () { + compiler.go:433: >> 6: *goja.newFunc(&{0xc0003a4eb0 return function () { returnCalled[id] = true; throw new Error(id); } 0 false}) @@ -13802,10 +13838,10 @@ compiler.go:433: 80: goja._clearResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 4 ---- PASS: TestIteratorReturnErrorNested (0.00s) +--- PASS: TestIteratorReturnErrorNested (0.01s) === RUN TestReturnFromForInLoop compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0006b3c20 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003a5220 f function f() { for (var i in {a: 1}) { return true; } @@ -13838,7 +13874,7 @@ --- PASS: TestReturnFromForInLoop (0.00s) === RUN TestReturnFromForOfLoop compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0006b3ea0 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003a54a0 f function f() { for (var i of [1]) { return true; } @@ -13887,7 +13923,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestIfStackLeaks (0.00s) === RUN TestWithCallee - compiler.go:433: 0: *goja.newFunc(&{0xc0003363c0 O function O() { + compiler.go:433: 0: *goja.newFunc(&{0xc000464500 O function O() { var that = this; this.m = function() { return this === that; @@ -13898,7 +13934,7 @@ compiler.go:433: > 2: goja.loadStack(0) compiler.go:433: > 3: goja.initStashP(0) compiler.go:433: > 4: goja.loadStack(0) - compiler.go:433: > 5: *goja.newFunc(&{0xc000336410 function() { + compiler.go:433: > 5: *goja.newFunc(&{0xc000464550 function() { return this === that; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13922,7 +13958,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestWithCallee (0.00s) === RUN TestWithScope - compiler.go:433: 0: *goja.newFunc(&{0xc000336780 f function f(o) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004648c0 f function f(o) { var x = 42; function innerf(o) { @@ -13934,7 +13970,7 @@ return innerf(o); } 1 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 1 1 1 false false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0003367d0 innerf function innerf(o) { + compiler.go:433: > 1: *goja.newFunc(&{0xc000464910 innerf function innerf(o) { with (o) { return x; } @@ -13965,7 +14001,7 @@ --- PASS: TestWithScope (0.00s) === RUN TestEvalCallee compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000336b90 function () { + compiler.go:433: 1: *goja.newFunc(&{0xc000464d70 function () { 'use strict'; var v = function() { return this === undefined; @@ -13976,7 +14012,7 @@ compiler.go:433: > 1: goja.initStash(0) compiler.go:433: > 2: goja.createArgsUnmapped(0) compiler.go:433: > 3: goja.initStashP(2) - compiler.go:433: > 4: *goja.newFunc(&{0xc000336be0 v function() { + compiler.go:433: > 4: *goja.newFunc(&{0xc000464dc0 v function() { return this === undefined; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -13996,7 +14032,7 @@ --- PASS: TestEvalCallee (0.00s) === RUN TestEvalBindingDeleteVar compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000336f50 function () { + compiler.go:433: 1: *goja.newFunc(&{0xc000465130 function () { eval("var x = 1"); return x === 1 && delete x; } 0 false}) @@ -14022,7 +14058,7 @@ --- PASS: TestEvalBindingDeleteVar (0.00s) === RUN TestEvalBindingDeleteFunc compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003372c0 function () { + compiler.go:433: 1: *goja.newFunc(&{0xc000465450 function () { eval("function x(){}"); return typeof x === "function" && delete x; } 0 false}) @@ -14116,10 +14152,10 @@ compiler.go:433: 26: goja.jump(-21) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTryResultEmptyContinueLoop (0.00s) +--- PASS: TestTryResultEmptyContinueLoop (0.01s) === RUN TestTryEmptyCatchStackLeak compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000337ef0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000398280 function() { var f; // Make sure the outer function is not stashless. (function() { @@ -14131,7 +14167,7 @@ } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 0 1 false false}) compiler.go:433: > 1: goja._loadUndef({}) - compiler.go:433: > 2: *goja.newFunc(&{0xc000020640 function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc0003982d0 function() { f++; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -14196,7 +14232,7 @@ compiler.go:433: 11: goja._initValueP({}) compiler.go:433: 12: goja.resolveVar1(o1) compiler.go:433: 13: goja._newObject({}) - compiler.go:433: 14: *goja.newMethod(&{{0xc0000215e0 1000 get 1e3() {return true;} 0 false} 1}) + compiler.go:433: 14: *goja.newMethod(&{{0xc000398dc0 1000 get 1e3() {return true;} 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({true}) compiler.go:433: > 2: goja._ret({}) @@ -14220,7 +14256,7 @@ compiler.go:433: 32: goja.call(1) compiler.go:433: 33: goja._initValueP({}) compiler.go:433: 34: goja._newObject({}) - compiler.go:433: 35: *goja.newMethod(&{{0xc000021630 0 0(){return true} 0 false} 1}) + compiler.go:433: 35: *goja.newMethod(&{{0xc000398e10 0 0(){return true} 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({true}) compiler.go:433: > 2: goja._ret({}) @@ -14281,7 +14317,7 @@ --- PASS: TestEscapedLet (0.00s) === RUN TestObjectLiteralFuncProps compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000021e50 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003995e0 function() { 'use strict'; var o = { eval: function() {return 1;}, @@ -14296,17 +14332,17 @@ } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) compiler.go:433: > 1: goja._newObject({}) - compiler.go:433: > 2: *goja.newFunc(&{0xc000021ea0 eval function() {return 1;} 0 true}) + compiler.go:433: > 2: *goja.newFunc(&{0xc000399630 eval function() {return 1;} 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadVal({1}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 3: goja.putProp(eval) - compiler.go:433: > 4: *goja.newMethod(&{{0xc000021ef0 arguments arguments() {return 2;} 0 true} 1}) + compiler.go:433: > 4: *goja.newMethod(&{{0xc000399680 arguments arguments() {return 2;} 0 true} 1}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadVal({2}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 5: *goja.defineMethodKeyed(&{arguments true}) - compiler.go:433: > 6: *goja.newFunc(&{0xc0003d4000 test1 function test1() {} 0 true}) + compiler.go:433: > 6: *goja.newFunc(&{0xc0003996d0 test1 function test1() {} 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{1 0}) compiler.go:433: >> 1: goja._loadCallee({}) compiler.go:433: >> 2: goja.initStackP(1) @@ -14370,14 +14406,14 @@ compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(o) compiler.go:433: 5: goja._newObject({}) - compiler.go:433: 6: *goja.newFunc(&{0xc0003d45f0 method function() { + compiler.go:433: 6: *goja.newFunc(&{0xc000399950 method function() { return method; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(method) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 7: goja.putProp(method) - compiler.go:433: 8: *goja.newFunc(&{0xc0003d4640 method function method() { + compiler.go:433: 8: *goja.newFunc(&{0xc0003999a0 method function method() { return method; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) @@ -14408,18 +14444,18 @@ === RUN TestFuncNameAssign compiler.go:433: 0: *goja.bindGlobal(&{[f f1] [] [f2] [] false}) compiler.go:433: 1: goja.resolveVar1(f) - compiler.go:433: 2: *goja.newFunc(&{0xc0003d49b0 f function() {} 0 false}) + compiler.go:433: 2: *goja.newFunc(&{0xc000399e00 f function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(f1) - compiler.go:433: 5: *goja.newFunc(&{0xc0003d4a50 f1 function() {} 0 false}) + compiler.go:433: 5: *goja.newFunc(&{0xc000399e50 f1 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 6: goja._putValueP({}) - compiler.go:433: 7: *goja.newFunc(&{0xc0003d4aa0 f2 function() {} 0 false}) + compiler.go:433: 7: *goja.newFunc(&{0xc000399ea0 f2 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -14478,7 +14514,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestLexicalDeclGlobal (0.00s) === RUN TestLexicalDeclFunction - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4e60 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a42d0 f function f() { if (true) { let it = "be"; if (it !== "be") { @@ -14533,7 +14569,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestLexicalDeclFunction (0.00s) === RUN TestLexicalDynamicScope - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5450 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050a550 f function f() { const func = global + 1; function inner() { function assertThrows(fn) { @@ -14575,7 +14611,7 @@ compiler.go:433: > 2: goja.initStash(0) compiler.go:433: > 3: goja.createArgsMapped(0) compiler.go:433: > 4: goja.initStashP(3) - compiler.go:433: > 5: *goja.newFunc(&{0xc0003d54a0 inner function inner() { + compiler.go:433: > 5: *goja.newFunc(&{0xc00050a5a0 inner function inner() { function assertThrows(fn) { let thrown = false; try { @@ -14613,7 +14649,7 @@ compiler.go:433: >> 2: goja.initStash(0) compiler.go:433: >> 3: goja.createArgsMapped(0) compiler.go:433: >> 4: goja.initStashP(2) - compiler.go:433: >> 5: *goja.newFunc(&{0xc0003d54f0 assertThrows function assertThrows(fn) { + compiler.go:433: >> 5: *goja.newFunc(&{0xc00050a5f0 assertThrows function assertThrows(fn) { let thrown = false; try { fn(); @@ -14661,7 +14697,7 @@ compiler.go:433: >> 6: goja.initStashP(1) compiler.go:433: >> 7: goja._loadUndef({}) compiler.go:433: >> 8: goja.loadStashLex(1) - compiler.go:433: >> 9: *goja.newFunc(&{0xc0003d5540 function() { + compiler.go:433: >> 9: *goja.newFunc(&{0xc00050a640 function() { func++; } 0 false}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) @@ -14674,7 +14710,7 @@ compiler.go:433: >> 11: goja._pop({}) compiler.go:433: >> 12: goja._loadUndef({}) compiler.go:433: >> 13: goja.loadStashLex(1) - compiler.go:433: >> 14: *goja.newFunc(&{0xc0003d5590 function() { + compiler.go:433: >> 14: *goja.newFunc(&{0xc00050a690 function() { global++; } 0 false}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) @@ -14688,7 +14724,7 @@ compiler.go:433: >> 16: goja._pop({}) compiler.go:433: >> 17: goja._loadUndef({}) compiler.go:433: >> 18: goja.loadStashLex(1) - compiler.go:433: >> 19: *goja.newFunc(&{0xc0003d55e0 function() { + compiler.go:433: >> 19: *goja.newFunc(&{0xc00050a6e0 function() { eval("func++"); } 0 false}) compiler.go:433: >>> 0: *goja.enterFunc(&{map[ this:1073741824 arguments:1073741825] 2 0 0 1 true true}) @@ -14706,7 +14742,7 @@ compiler.go:433: >> 21: goja._pop({}) compiler.go:433: >> 22: goja._loadUndef({}) compiler.go:433: >> 23: goja.loadStashLex(1) - compiler.go:433: >> 24: *goja.newFunc(&{0xc0003d5630 function() { + compiler.go:433: >> 24: *goja.newFunc(&{0xc00050a730 function() { eval("global++"); } 0 false}) compiler.go:433: >>> 0: *goja.enterFunc(&{map[ this:1073741824 arguments:1073741825] 2 0 0 1 true true}) @@ -14746,7 +14782,7 @@ --- PASS: TestLexicalDynamicScope (0.00s) === RUN TestLexicalDynamicScope1 compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d5d60 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc00050ad20 function() { const x = 1 * 4; return (function() { eval(""); @@ -14761,7 +14797,7 @@ compiler.go:433: > 5: goja.loadVal({4}) compiler.go:433: > 6: goja.initStashP(1) compiler.go:433: > 7: goja._loadUndef({}) - compiler.go:433: > 8: *goja.newFunc(&{0xc0003d5e00 function() { + compiler.go:433: > 8: *goja.newFunc(&{0xc00050adc0 function() { eval(""); return x; } 0 false}) @@ -14785,7 +14821,7 @@ --- PASS: TestLexicalDynamicScope1 (0.00s) === RUN TestLexicalDynamicScope2 compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000372230 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc00050b130 function() { const x = 1 + 3; var y = 2 * 2; eval(""); @@ -14834,7 +14870,7 @@ === RUN TestLetArrayWithNewline --- PASS: TestLetArrayWithNewline (0.00s) === RUN TestDynamicUninitedVarAccess - compiler.go:433: 0: *goja.newFunc(&{0xc000373130 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020af0 f function f() { var x; return eval("x"); } 0 false}) @@ -14897,7 +14933,7 @@ compiler.go:433: 11: goja.jneP(11) compiler.go:433: 12: goja.loadDynamic(f) compiler.go:433: 13: goja.getPropCallee(push) - compiler.go:433: 14: *goja.newFunc(&{0xc000373950 function() { + compiler.go:433: 14: *goja.newFunc(&{0xc0000210e0 function() { return i; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -14955,7 +14991,7 @@ compiler.go:433: 11: goja.copyStash({}) compiler.go:433: 12: goja.loadDynamic(a) compiler.go:433: 13: goja.getPropCallee(push) - compiler.go:433: 14: *goja.newFunc(&{0xc000426000 function () { return i; } 0 false}) + compiler.go:433: 14: *goja.newFunc(&{0xc000021770 function () { return i; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadStashLex(0) compiler.go:433: > 2: goja._ret({}) @@ -15014,7 +15050,7 @@ compiler.go:433: 13: goja.jneP(11) compiler.go:433: 14: goja.loadDynamic(f) compiler.go:433: 15: goja.getPropCallee(push) - compiler.go:433: 16: *goja.newFunc(&{0xc0004263c0 function() { + compiler.go:433: 16: *goja.newFunc(&{0xc00015e050 function() { return i; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -15076,7 +15112,7 @@ compiler.go:433: 16: goja.initStashP(0) compiler.go:433: 17: goja.loadDynamic(f) compiler.go:433: 18: goja.getPropCallee(push) - compiler.go:433: 19: *goja.newFunc(&{0xc0004265f0 function() { + compiler.go:433: 19: *goja.newFunc(&{0xc00015e280 function() { return i; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -15117,7 +15153,7 @@ compiler.go:433: 52: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 3 ---- PASS: TestLexicalForOfLoop (0.00s) +--- PASS: TestLexicalForOfLoop (0.01s) === RUN TestLexicalForOfLoopContBreak compiler.go:433: 0: *goja.bindGlobal(&{[] [] [res] [f] false}) compiler.go:433: 1: goja.newArray(0) @@ -15149,7 +15185,7 @@ compiler.go:433: 27: goja.jump(-9) compiler.go:433: 28: goja.loadDynamic(f) compiler.go:433: 29: goja.getPropCallee(push) - compiler.go:433: 30: *goja.newFunc(&{0xc0004269b0 function() { + compiler.go:433: 30: *goja.newFunc(&{0xc00015e640 function() { return i; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -15172,7 +15208,7 @@ compiler.go:433: 45: goja.initGlobalP(res) compiler.go:433: 46: goja.loadDynamic(f) compiler.go:433: 47: goja.getPropCallee(forEach) - compiler.go:433: 48: *goja.newFunc(&{0xc000426a00 function(item) {res += item()} 1 false}) + compiler.go:433: 48: *goja.newFunc(&{0xc00015e690 function(item) {res += item()} 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja.resolveVar1(res) compiler.go:433: > 2: goja._getValue({}) @@ -15203,7 +15239,7 @@ compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(throws) compiler.go:433: 2: goja.loadDynamic(SyntaxError) - compiler.go:433: 3: *goja.newFunc(&{0xc000426f00 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc00015eb90 function() { let x; { if (true) { @@ -15230,7 +15266,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestVarBlockConflictEval (0.00s) === RUN TestVarBlockNoConflict - compiler.go:433: 0: *goja.newFunc(&{0xc000427270 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00015ef00 f function f() { let x; function ff() { { @@ -15240,7 +15276,7 @@ ff(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{2 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0004272c0 ff function ff() { + compiler.go:433: > 1: *goja.newFunc(&{0xc00015ef50 ff function ff() { { var x = 3; } @@ -15267,7 +15303,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestVarBlockNoConflict (0.00s) === RUN TestVarBlockNoConflictEval - compiler.go:433: 0: *goja.newFunc(&{0xc000427630 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00015f2c0 f function f() { let x; function ff() { { @@ -15281,7 +15317,7 @@ compiler.go:433: > 2: goja.initStash(0) compiler.go:433: > 3: goja.createArgsMapped(0) compiler.go:433: > 4: goja.initStashP(3) - compiler.go:433: > 5: *goja.newFunc(&{0xc000427680 ff function ff() { + compiler.go:433: > 5: *goja.newFunc(&{0xc00015f310 ff function ff() { { eval("var x = 3"); } @@ -15314,7 +15350,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestVarBlockNoConflictEval (0.00s) === RUN TestVarDeclCorrectScope - compiler.go:433: 0: *goja.newFunc(&{0xc000427a40 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00015f6d0 f function f() { { let z; eval("var x = 3"); @@ -15350,7 +15386,7 @@ compiler.go:433: 3: goja._throw({}) compiler.go:433: 4: goja.jump(9) compiler.go:433: 5: *goja.enterBlock(&{map[] 0 2}) - compiler.go:433: 6: *goja.newFunc(&{0xc000427db0 f function f() {} 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc00015fa40 f function f() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -15365,7 +15401,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestLexicalCatch (0.00s) === RUN TestArgumentsLexicalDecl - compiler.go:433: 0: *goja.newFunc(&{0xc0004c2190 f1 function f1() { + compiler.go:433: 0: *goja.newFunc(&{0xc00015fc70 f1 function f1() { let arguments; return arguments; } 0 false}) @@ -15383,7 +15419,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArgumentsLexicalDecl (0.00s) === RUN TestArgumentsLexicalDeclAssign - compiler.go:433: 0: *goja.newFunc(&{0xc0004c2500 f1 function f1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a80a0 f1 function f1() { let arguments = arguments; return a; } 0 false}) @@ -15396,7 +15432,7 @@ compiler.go:433: 2: goja.loadDynamic(assert) compiler.go:433: 3: goja.getPropCallee(throws) compiler.go:433: 4: goja.loadDynamic(ReferenceError) - compiler.go:433: 5: *goja.newFunc(&{0xc0004c25a0 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc0002a8140 function() { f1(42); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -15412,7 +15448,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArgumentsLexicalDeclAssign (0.00s) === RUN TestLexicalConstModifyFromEval - compiler.go:433: 0: *goja.newFunc(&{0xc0004c2870 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a8410 f function f() { eval("x = 2"); } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:1073741825] 2 0 0 1 true true}) @@ -15432,7 +15468,7 @@ compiler.go:433: 4: goja.loadDynamic(assert) compiler.go:433: 5: goja.getPropCallee(throws) compiler.go:433: 6: goja.loadDynamic(TypeError) - compiler.go:433: 7: *goja.newFunc(&{0xc0004c28c0 function() { + compiler.go:433: 7: *goja.newFunc(&{0xc0002a8460 function() { f(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -15449,7 +15485,7 @@ === RUN TestLexicalStrictNames --- PASS: TestLexicalStrictNames (0.00s) === RUN TestAssignAfterStackExpand - compiler.go:433: 0: *goja.newFunc(&{0xc0004c2d70 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a8910 f function f() { let sum = 0; for (let i = 0; i < arguments.length; i++) { sum += arguments[i]; @@ -15484,7 +15520,7 @@ compiler.go:433: > 25: *goja.leaveBlock(&{1 false}) compiler.go:433: > 26: goja.loadStack1Lex(1) compiler.go:433: > 27: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0004c2dc0 testAssignment function testAssignment() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002a8960 testAssignment function testAssignment() { var x = 0; var scope = {}; @@ -15552,9 +15588,9 @@ compiler.go:433: 5: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 2 ---- PASS: TestAssignAfterStackExpand (0.00s) +--- PASS: TestAssignAfterStackExpand (0.01s) === RUN TestArgAccessFromDynamicStash - compiler.go:433: 0: *goja.newFunc(&{0xc0004c3130 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a8cd0 f function f(arg) { function test() { eval(""); return a; @@ -15566,7 +15602,7 @@ compiler.go:433: > 2: goja.initStash(1) compiler.go:433: > 3: goja.createArgsMapped(1) compiler.go:433: > 4: goja.initStashP(3) - compiler.go:433: > 5: *goja.newFunc(&{0xc0004c3180 test function test() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0002a8d20 test function test() { eval(""); return a; } 0 false}) @@ -15593,7 +15629,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArgAccessFromDynamicStash (0.00s) === RUN TestLoadMixedLex - compiler.go:433: 0: *goja.newFunc(&{0xc0004c34a0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a9040 f function f() { let a = 1; { function inner() { @@ -15611,7 +15647,7 @@ compiler.go:433: > 5: goja.loadVal({1}) compiler.go:433: > 6: goja.initStashP(1) compiler.go:433: > 7: *goja.enterBlock(&{map[inner:0] 1 0}) - compiler.go:433: > 8: *goja.newFunc(&{0xc0004c34f0 inner function inner() { + compiler.go:433: > 8: *goja.newFunc(&{0xc0002a9090 inner function inner() { eval("var a = true"); return a; } 0 false}) @@ -15738,7 +15774,7 @@ compiler.go:433: 41: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayLiteralSpread (0.00s) +--- PASS: TestArrayLiteralSpread (0.01s) === RUN TestObjectAssignmentPattern compiler.go:433: 0: *goja.bindGlobal(&{[] [] [a b c] [] false}) compiler.go:433: 1: goja._loadUndef({}) @@ -15794,7 +15830,7 @@ --- PASS: TestObjectAssignmentPattern (0.00s) === RUN TestObjectAssignmentPatternNoDyn compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0004c3cc0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002a8320 function() { let a, b, c; ({a, b, c=3} = {a: 1, b: 2}); assert.sameValue(a, 1, "a"); @@ -15927,7 +15963,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestObjectAssignmentPatternNested (0.00s) === RUN TestObjectAssignmentPatternEvalOrder - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2460 src function src() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a8a00 src function src() { trace += "src(),"; return { get a() { @@ -15943,7 +15979,7 @@ compiler.go:433: > 4: goja._add({}) compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja._newObject({}) - compiler.go:433: > 7: *goja.newMethod(&{{0xc0006b24b0 a get a() { + compiler.go:433: > 7: *goja.newMethod(&{{0xc0002a8a50 a get a() { trace += "get a,"; return "a"; } 0 false} 1}) @@ -15957,7 +15993,7 @@ compiler.go:433: >> 7: goja._ret({}) compiler.go:433: > 8: *goja.defineGetterKeyed(&{a true}) compiler.go:433: > 9: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0006b2500 prop1 function prop1() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002a8aa0 prop1 function prop1() { trace += "prop1()," return { toString: function() { @@ -15973,7 +16009,7 @@ compiler.go:433: > 4: goja._add({}) compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja._newObject({}) - compiler.go:433: > 7: *goja.newFunc(&{0xc0006b2550 toString function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc0002a8af0 toString function() { trace += "prop1-to-string(),"; return "a"; } 0 false}) @@ -15987,7 +16023,7 @@ compiler.go:433: >> 7: goja._ret({}) compiler.go:433: > 8: goja.putProp(toString) compiler.go:433: > 9: goja._ret({}) - compiler.go:433: 2: *goja.newFunc(&{0xc0006b25a0 prop2 function prop2() { + compiler.go:433: 2: *goja.newFunc(&{0xc0002a8b40 prop2 function prop2() { trace += "prop2(),"; return { toString: function() { @@ -16003,7 +16039,7 @@ compiler.go:433: > 4: goja._add({}) compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja._newObject({}) - compiler.go:433: > 7: *goja.newFunc(&{0xc0006b25f0 toString function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc0002a8b90 toString function() { trace += "prop2-to-string(),"; return "b"; } 0 false}) @@ -16017,7 +16053,7 @@ compiler.go:433: >> 7: goja._ret({}) compiler.go:433: > 8: goja.putProp(toString) compiler.go:433: > 9: goja._ret({}) - compiler.go:433: 3: *goja.newFunc(&{0xc0006b2640 target function target() { + compiler.go:433: 3: *goja.newFunc(&{0xc0002a8be0 target function target() { trace += "target()," return target_obj; } 0 false}) @@ -16074,9 +16110,9 @@ compiler.go:433: 46: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestObjectAssignmentPatternEvalOrder (0.00s) +--- PASS: TestObjectAssignmentPatternEvalOrder (0.01s) === RUN TestArrayAssignmentPatternEvalOrder - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2e10 src function src() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a9310 src function src() { trace += "src(),"; return src_arr; } 0 false}) @@ -16088,7 +16124,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadDynamic(src_arr) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0006b2e60 target function target() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002a9360 target function target() { trace += "target(),"; return tgt; } 0 false}) @@ -16100,7 +16136,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadDynamic(tgt) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 2: *goja.newFunc(&{0xc0006b2eb0 default_a function default_a() { + compiler.go:433: 2: *goja.newFunc(&{0xc0002a93b0 default_a function default_a() { trace += "default a,"; return "def_a"; } 0 false}) @@ -16112,7 +16148,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadVal({def_a}) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 3: *goja.newFunc(&{0xc0006b2f00 default_b function default_b() { + compiler.go:433: 3: *goja.newFunc(&{0xc0002a94a0 default_b function default_b() { trace += "default b,"; return "def_b"; } 0 false}) @@ -16131,7 +16167,7 @@ compiler.go:433: 8: goja.loadDynamic(Symbol) compiler.go:433: 9: goja.getProp(iterator) compiler.go:433: 10: goja._toPropertyKey({}) - compiler.go:433: 11: *goja.newFunc(&{0xc0006b2f50 function() { + compiler.go:433: 11: *goja.newFunc(&{0xc0002a9540 function() { let done = false; return { next: function() { @@ -16151,7 +16187,7 @@ compiler.go:433: > 1: goja.loadVal({false}) compiler.go:433: > 2: goja.initStashP(0) compiler.go:433: > 3: goja._newObject({}) - compiler.go:433: > 4: *goja.newFunc(&{0xc0006b2fa0 next function() { + compiler.go:433: > 4: *goja.newFunc(&{0xc0002a9590 next function() { trace += "next,"; if (!done) { done = true; @@ -16179,7 +16215,7 @@ compiler.go:433: >> 17: goja.putProp(done) compiler.go:433: >> 18: goja._ret({}) compiler.go:433: > 5: goja.putProp(next) - compiler.go:433: > 6: *goja.newFunc(&{0xc0006b2ff0 return function() { + compiler.go:433: > 6: *goja.newFunc(&{0xc0002a95e0 return function() { trace += "return,"; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -16195,7 +16231,7 @@ compiler.go:433: 12: goja._setElem1Named({}) compiler.go:433: 13: goja.initGlobalP(src_arr) compiler.go:433: 14: goja._newObject({}) - compiler.go:433: 15: *goja.newMethod(&{{0xc0006b3040 a get a() { + compiler.go:433: 15: *goja.newMethod(&{{0xc0002a9630 a get a() { trace += "get a,"; return "a"; } 0 false} 1}) @@ -16208,7 +16244,7 @@ compiler.go:433: > 6: goja.loadVal({a}) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 16: *goja.defineGetterKeyed(&{a true}) - compiler.go:433: 17: *goja.newMethod(&{{0xc0006b3090 b get b() { + compiler.go:433: 17: *goja.newMethod(&{{0xc0002a9680 b get b() { trace += "get b,"; return "b"; } 0 false} 1}) @@ -16316,7 +16352,7 @@ compiler.go:433: 64: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestObjectAssignPatternRest (0.00s) +--- PASS: TestObjectAssignPatternRest (0.01s) === RUN TestObjectBindPattern compiler.go:433: 0: *goja.bindGlobal(&{[y] [] [a b c d] [] false}) compiler.go:433: 1: goja._newObject({}) @@ -16391,7 +16427,7 @@ compiler.go:433: 70: goja.loadDynamic(assert) compiler.go:433: 71: goja.getPropCallee(throws) compiler.go:433: 72: goja.loadDynamic(ReferenceError) - compiler.go:433: 73: *goja.newFunc(&{0xc0006b34a0 function() { + compiler.go:433: 73: *goja.newFunc(&{0xc0002a9a90 function() { x; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -16414,7 +16450,7 @@ compiler.go:433: 2: goja.loadDynamic(Symbol) compiler.go:433: 3: goja.getProp(toString) compiler.go:433: 4: goja._toPropertyKey({}) - compiler.go:433: 5: *goja.newMethod(&{{0xc0006b3860 get [Symbol.toString]() { + compiler.go:433: 5: *goja.newMethod(&{{0xc0002a9e50 get [Symbol.toString]() { } 0 false} 2}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) @@ -16425,7 +16461,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestObjLiteralComputedKeys (0.00s) === RUN TestObjLiteralComputedKeysEvalOrder - compiler.go:433: 0: *goja.newFunc(&{0xc0006b3bd0 key function key() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4280 key function key() { trace.push("key"); return { toString: function() { @@ -16441,7 +16477,7 @@ compiler.go:433: > 4: goja.call(1) compiler.go:433: > 5: goja._pop({}) compiler.go:433: > 6: goja._newObject({}) - compiler.go:433: > 7: *goja.newFunc(&{0xc0006b3c20 toString function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc0003a42d0 toString function() { trace.push("key-toString"); return "key"; } 0 false}) @@ -16455,7 +16491,7 @@ compiler.go:433: >> 7: goja._ret({}) compiler.go:433: > 8: goja.putProp(toString) compiler.go:433: > 9: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0006b3c70 val function val() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003a4370 val function val() { trace.push("val"); return "val"; } 0 false}) @@ -16844,7 +16880,7 @@ === RUN TestAssignPatternRestTrailingComma --- PASS: TestAssignPatternRestTrailingComma (0.00s) === RUN TestFuncParamInitializerSimple - compiler.go:433: 0: *goja.newFunc(&{0xc000336d20 f function f(a = 1) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a54a0 f function f(a = 1) { return a; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -16869,7 +16905,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFuncParamInitializerSimple (0.00s) === RUN TestFuncParamObjectPatternSimple - compiler.go:433: 0: *goja.newFunc(&{0xc000336f50 f function f({a, b} = {a: 1, b: 2}) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a56d0 f function f({a, b} = {a: 1, b: 2}) { return "" + a + b; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{2 1}) @@ -16915,7 +16951,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFuncParamObjectPatternSimple (0.00s) === RUN TestFuncParamRestStackSimple - compiler.go:433: 0: *goja.newFunc(&{0xc0003371d0 f function f(arg1, ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5900 f function f(arg1, ...rest) { return rest; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 1}) @@ -16940,7 +16976,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFuncParamRestStackSimple (0.00s) === RUN TestFuncParamRestStashSimple - compiler.go:433: 0: *goja.newFunc(&{0xc000337400 f function f(arg1, ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5b30 f function f(arg1, ...rest) { eval("true"); return rest; } 1 false}) @@ -16974,7 +17010,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestFuncParamRestStashSimple (0.00s) === RUN TestRestArgsNotInStash - compiler.go:433: 0: *goja.newFunc(&{0xc0003377c0 f function f(...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5ef0 f function f(...rest) { () => rest; return rest.length; } 0 false}) @@ -16982,7 +17018,7 @@ compiler.go:433: > 1: goja.createArgsRestStack(0) compiler.go:433: > 2: goja.initStashP(0) compiler.go:433: > 3: *goja.enterFuncBody(&{{map[] 0 0} 1 false false}) - compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000337810 () => rest 0 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000464050 () => rest 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStashLex(0) compiler.go:433: >> 2: goja._ret({}) @@ -17000,7 +17036,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestRestArgsNotInStash (0.00s) === RUN TestRestArgsInStash - compiler.go:433: 0: *goja.newFunc(&{0xc000337b30 f function f(first, ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464460 f function f(first, ...rest) { () => first; () => rest; return rest.length; @@ -17009,12 +17045,12 @@ compiler.go:433: > 1: goja._createArgsRestStash({}) compiler.go:433: > 2: goja.initStashP(1) compiler.go:433: > 3: *goja.enterFuncBody(&{{map[] 0 0} 1 false false}) - compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000337b80 () => first 0 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc0004644b0 () => first 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStashLex(0) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 5: goja._pop({}) - compiler.go:433: > 6: *goja.newArrowFunc(&{{0xc000337bd0 () => rest 0 false}}) + compiler.go:433: > 6: *goja.newArrowFunc(&{{0xc000464500 () => rest 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStashLex(1) compiler.go:433: >> 2: goja._ret({}) @@ -17032,7 +17068,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestRestArgsInStash (0.00s) === RUN TestRestArgsInStashFwdRef - compiler.go:433: 0: *goja.newFunc(&{0xc000020640 f function f(first = eval(), ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464870 f function f(first = eval(), ...rest) { () => first; () => rest; return rest.length === 1 && rest[0] === 2; @@ -17051,12 +17087,12 @@ compiler.go:433: > 11: goja._createArgsRestStash({}) compiler.go:433: > 12: goja.initStashP(2) compiler.go:433: > 13: *goja.enterFuncBody(&{{map[] 0 0} 1 false true}) - compiler.go:433: > 14: *goja.newArrowFunc(&{{0xc0000206e0 () => first 0 false}}) + compiler.go:433: > 14: *goja.newArrowFunc(&{{0xc0004648c0 () => first 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStashLex(0) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 15: goja._pop({}) - compiler.go:433: > 16: *goja.newArrowFunc(&{{0xc000020730 () => rest 0 false}}) + compiler.go:433: > 16: *goja.newArrowFunc(&{{0xc000464910 () => rest 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStashLex(2) compiler.go:433: >> 2: goja._ret({}) @@ -17082,7 +17118,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestRestArgsInStashFwdRef (0.00s) === RUN TestFuncParamRestPattern - compiler.go:433: 0: *goja.newFunc(&{0xc000020a00 f function f(arg1, ...{0: rest1, 1: rest2}) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464c80 f function f(arg1, ...{0: rest1, 1: rest2}) { return ""+arg1+" "+rest1+" "+rest2; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{2 1}) @@ -17123,7 +17159,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFuncParamRestPattern (0.00s) === RUN TestFuncParamForwardRef - compiler.go:433: 0: *goja.newFunc(&{0xc0000208c0 f function f(a = b + 1, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc000464eb0 f function f(a = b + 1, b) { return ""+a+" "+b; } 0 false}) compiler.go:433: > 0: *goja.enterFunc1(&{map[] 2 2 1 1 false}) @@ -17154,7 +17190,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestFuncParamForwardRef (0.00s) === RUN TestFuncParamForwardRefMissing - compiler.go:433: 0: *goja.newFunc(&{0xc000020f00 f function f(a = b + 1, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc000465220 f function f(a = b + 1, b) { return ""+a+" "+b; } 0 false}) compiler.go:433: > 0: *goja.enterFunc1(&{map[] 2 2 1 1 false}) @@ -17179,7 +17215,7 @@ compiler.go:433: 2: goja.loadDynamic(assert) compiler.go:433: 3: goja.getPropCallee(throws) compiler.go:433: 4: goja.loadDynamic(ReferenceError) - compiler.go:433: 5: *goja.newFunc(&{0xc000020f50 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc000465270 function() { f(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -17194,7 +17230,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestFuncParamForwardRefMissing (0.00s) === RUN TestFuncParamInnerRef - compiler.go:433: 0: *goja.newFunc(&{0xc0000214f0 f function f(a = inner) { + compiler.go:433: 0: *goja.newFunc(&{0xc000465590 f function f(a = inner) { var inner = 42; return a; } 0 false}) @@ -17212,7 +17248,7 @@ compiler.go:433: 2: goja.loadDynamic(assert) compiler.go:433: 3: goja.getPropCallee(throws) compiler.go:433: 4: goja.loadDynamic(ReferenceError) - compiler.go:433: 5: *goja.newFunc(&{0xc000021540 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc000465680 function() { f(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -17227,7 +17263,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFuncParamInnerRef (0.00s) === RUN TestFuncParamInnerRefEval - compiler.go:433: 0: *goja.newFunc(&{0xc000021860 f function f(a = eval("inner")) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004659f0 f function f(a = eval("inner")) { var inner = 42; return a; } 0 false}) @@ -17252,7 +17288,7 @@ compiler.go:433: 2: goja.loadDynamic(assert) compiler.go:433: 3: goja.getPropCallee(throws) compiler.go:433: 4: goja.loadDynamic(ReferenceError) - compiler.go:433: 5: *goja.newFunc(&{0xc0000218b0 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc000465a40 function() { f(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -17267,7 +17303,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestFuncParamInnerRefEval (0.00s) === RUN TestFuncParamCalleeName - compiler.go:433: 0: *goja.newFunc(&{0xc000021b80 f function f(a = f) { + compiler.go:433: 0: *goja.newFunc(&{0xc000465d10 f function f(a = f) { var f; return f; } 0 false}) @@ -17288,7 +17324,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFuncParamCalleeName (0.00s) === RUN TestFuncParamVarCopy - compiler.go:433: 0: *goja.newFunc(&{0xc000021db0 f function f(a = f) { + compiler.go:433: 0: *goja.newFunc(&{0xc000398000 f function f(a = f) { var a; return a; } 0 false}) @@ -17311,7 +17347,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestFuncParamVarCopy (0.00s) === RUN TestFuncParamScope - compiler.go:433: 0: *goja.newFunc(&{0xc0006b21e0 f function f( + compiler.go:433: 0: *goja.newFunc(&{0xc000398370 f function f( _ = probe1 = function() { return x; }, __ = (eval('var x = "inside";'), probe2 = function() { return x; }) ) { @@ -17325,7 +17361,7 @@ compiler.go:433: > 6: goja.loadStashLex(0) compiler.go:433: > 7: goja.jdefP(5) compiler.go:433: > 8: goja.resolveVar1(probe1) - compiler.go:433: > 9: *goja.newFunc(&{0xc0006b2230 probe1 function() { return x; } 0 false}) + compiler.go:433: > 9: *goja.newFunc(&{0xc0003983c0 probe1 function() { return x; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadDynamic(x) compiler.go:433: >> 2: goja._ret({}) @@ -17338,7 +17374,7 @@ compiler.go:433: > 16: goja.callEval(1) compiler.go:433: > 17: goja._pop({}) compiler.go:433: > 18: goja.resolveVar1(probe2) - compiler.go:433: > 19: *goja.newFunc(&{0xc0006b2280 probe2 function() { return x; } 0 false}) + compiler.go:433: > 19: *goja.newFunc(&{0xc000398410 probe2 function() { return x; } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadDynamic(x) compiler.go:433: >> 2: goja._ret({}) @@ -17366,11 +17402,11 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestFuncParamScope (0.00s) === RUN TestDefParamsStackPtr - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2730 A function A() {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0003988c0 A function A() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0006b2780 D function D(message = '') { + compiler.go:433: 1: *goja.newFunc(&{0xc000398910 D function D(message = '') { var C = A.B; C([1,2,3]); } 0 false}) @@ -17398,7 +17434,7 @@ compiler.go:433: > 21: goja._ret({}) compiler.go:433: 2: *goja.bindGlobal(&{[] [A D] [] [] false}) compiler.go:433: 3: goja.loadDynamic(A) - compiler.go:433: 4: *goja.newFunc(&{0xc0006b2870 function () {} 0 false}) + compiler.go:433: 4: *goja.newFunc(&{0xc000398960 function () {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -17410,7 +17446,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestDefParamsStackPtr (0.00s) === RUN TestNestedVariadicCalls - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2aa0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398b90 f function f() { return Array.prototype.join.call(arguments, ","); } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 0 1 0 1 true false}) @@ -17447,7 +17483,7 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestNestedVariadicCalls (0.00s) === RUN TestVariadicNew - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2d70 C function C() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398e60 C function C() { this.res = Array.prototype.join.call(arguments, ","); } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 0 1 0 1 true false}) @@ -17493,11 +17529,11 @@ compiler_test.go:191: stashAllocs: 2 --- PASS: TestVariadicNew (0.00s) === RUN TestVariadicUseStackVars - compiler.go:433: 0: *goja.newFunc(&{0xc0006b30e0 A function A(message) { return message; } 1 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc00050a230 A function A(message) { return message; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja.loadStackLex(-1) compiler.go:433: > 2: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0006b3130 B function B(...args){ + compiler.go:433: 1: *goja.newFunc(&{0xc00050a280 B function B(...args){ return A(...args); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) @@ -17518,9 +17554,9 @@ compiler.go:433: 6: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestVariadicUseStackVars (0.00s) +--- PASS: TestVariadicUseStackVars (0.01s) === RUN TestCatchParamPattern - compiler.go:433: 0: *goja.newFunc(&{0xc0006b3360 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00050a4b0 f function f() { let x = 3; try { throw {a: 1, b: 2}; @@ -17588,14 +17624,14 @@ === RUN TestArrowBoxedThis compiler.go:433: 0: *goja.bindGlobal(&{[context] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(fn) - compiler.go:433: 2: *goja.newFunc(&{0xc0006b39a0 fn function() { + compiler.go:433: 2: *goja.newFunc(&{0xc00050aaf0 fn function() { return (arg) => { var local; context = this; }; } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 0 1 false false}) compiler.go:433: > 1: goja._boxThis({}) compiler.go:433: > 2: goja.loadStack(0) compiler.go:433: > 3: goja.initStashP(0) - compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc0006b39f0 (arg) => { var local; context = this; } 1 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc00050ab40 (arg) => { var local; context = this; } 1 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{1 1}) compiler.go:433: >> 1: goja.resolveVar1(context) compiler.go:433: >> 2: goja.loadStash(0) @@ -17617,7 +17653,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestArrowBoxedThis (0.00s) === RUN TestParameterOverride - compiler.go:433: 0: *goja.newFunc(&{0xc0006b3c70 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc00050adc0 f function f(arg) { var arg = arg || "default" return arg } 1 false}) @@ -17676,7 +17712,7 @@ compiler.go:433: 1: goja._loadUndef({}) compiler.go:433: 2: goja.initGlobalP(res) compiler.go:433: 3: goja._newObject({}) - compiler.go:433: 4: *goja.newMethod(&{{0xc000336c80 tmpl tmpl() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000398410 tmpl tmpl() { res = this; return () => {}; } 0 false} 1}) @@ -17685,7 +17721,7 @@ compiler.go:433: > 2: goja.resolveVar1(res) compiler.go:433: > 3: goja.loadStack(0) compiler.go:433: > 4: goja._putValueP({}) - compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc000336cd0 () => {} 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc000398460 () => {} 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja._loadUndef({}) compiler.go:433: >> 2: goja._ret({}) @@ -17696,7 +17732,7 @@ compiler.go:433: 8: goja.loadDynamic(o) compiler.go:433: 9: goja.getPropCallee(tmpl) compiler.go:433: 10: goja.call(0) - compiler.go:433: 11: *goja.getTaggedTmplObject(&{[0xc00024d770] [0xc00024d7a0]}) + compiler.go:433: 11: *goja.getTaggedTmplObject(&{[0xc00025d5f0] [0xc00025d620]}) compiler.go:433: 12: goja.call(1) compiler.go:433: 13: goja._pop({}) compiler.go:433: 14: goja.loadDynamic(res) @@ -17707,15 +17743,15 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestTaggedTemplate (0.00s) === RUN TestDuplicateGlobalFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000337220 b function b(){ return "b" } 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc000398960 b function b(){ return "b" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({b}) compiler.go:433: > 2: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000337270 c function c(){ return "c" } 0 false}) + compiler.go:433: 1: *goja.newFunc(&{0xc0003989b0 c function c(){ return "c" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({c}) compiler.go:433: > 2: goja._ret({}) - compiler.go:433: 2: *goja.newFunc(&{0xc0003372c0 a function a(){} 0 false}) + compiler.go:433: 2: *goja.newFunc(&{0xc000398a00 a function a(){} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -17727,7 +17763,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestDuplicateGlobalFunc (0.00s) === RUN TestDuplicateFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000337770 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398eb0 f function f() { function a(){} function b(){ return "b" } function c(){ return "c" } @@ -17735,22 +17771,22 @@ return b(); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{3 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0003377c0 a function a(){} 0 false}) + compiler.go:433: > 1: *goja.newFunc(&{0xc000398f00 a function a(){} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja._loadUndef({}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 2: goja.initStackP(1) - compiler.go:433: > 3: *goja.newFunc(&{0xc000337810 b function b(){ return "b" } 0 false}) + compiler.go:433: > 3: *goja.newFunc(&{0xc000398f50 b function b(){ return "b" } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadVal({b}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 4: goja.initStackP(2) - compiler.go:433: > 5: *goja.newFunc(&{0xc000337860 c function c(){ return "c" } 0 false}) + compiler.go:433: > 5: *goja.newFunc(&{0xc000398fa0 c function c(){ return "c" } 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadVal({c}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 6: goja.initStackP(3) - compiler.go:433: > 7: *goja.newFunc(&{0xc0003378b0 a function a(){} 0 false}) + compiler.go:433: > 7: *goja.newFunc(&{0xc000398ff0 a function a(){} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja._loadUndef({}) compiler.go:433: >> 2: goja._ret({}) @@ -17769,7 +17805,7 @@ === RUN TestSrcLocations compiler.go:433: 0: *goja.bindGlobal(&{[] [] [i] [] false}) compiler.go:433: 1: goja._newObject({}) - compiler.go:433: 2: *goja.newMethod(&{{0xc000337c70 valueOf valueOf() { + compiler.go:433: 2: *goja.newMethod(&{{0xc0003993b0 valueOf valueOf() { throw new Error(); } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -17819,7 +17855,7 @@ compiler.go:433: 41: goja.loadDynamic(globalThis) compiler.go:433: 42: goja.loadVal({x}) compiler.go:433: 43: goja._newObject({}) - compiler.go:433: 44: *goja.newMethod(&{{0xc000337cc0 get get() { + compiler.go:433: 44: *goja.newMethod(&{{0xc000399400 get get() { throw new Error(); } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -17829,7 +17865,7 @@ compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 45: *goja.defineMethodKeyed(&{get true}) - compiler.go:433: 46: *goja.newMethod(&{{0xc000337d10 set set() { + compiler.go:433: 46: *goja.newMethod(&{{0xc000399450 set set() { throw new Error(); } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18101,7 +18137,7 @@ compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 === RUN TestConstantFolding/default_function_parameter - compiler.go:433: 0: *goja.newFunc(&{0xc0003d51d0 f function f(arg = 1 + 2) {return arg} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4780 f function f(arg = 1 + 2) {return arg} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja.loadStackLex(-1) compiler.go:433: > 2: goja.jdefP(3) @@ -18117,7 +18153,7 @@ compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 === RUN TestConstantFolding/return - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5450 f function f() {return 1 + 2} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4a00 f function f() {return 1 + 2} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({3}) compiler.go:433: > 2: goja._ret({}) @@ -18143,7 +18179,7 @@ compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(throws) compiler.go:433: 2: goja.loadDynamic(ReferenceError) - compiler.go:433: 3: *goja.newArrowFunc(&{{0xc000372190 () => { + compiler.go:433: 3: *goja.newArrowFunc(&{{0xc0003a5540 () => { a = 1; let a; } 0 false}}) @@ -18159,7 +18195,7 @@ compiler.go:433: 6: goja.loadDynamic(assert) compiler.go:433: 7: goja.getPropCallee(throws) compiler.go:433: 8: goja.loadDynamic(ReferenceError) - compiler.go:433: 9: *goja.newArrowFunc(&{{0xc0003721e0 () => { + compiler.go:433: 9: *goja.newArrowFunc(&{{0xc0003a5590 () => { ({a, b} = {a: 1, b: 2}); let a, b; } 0 false}}) @@ -18188,7 +18224,7 @@ compiler.go:433: 12: goja.loadDynamic(assert) compiler.go:433: 13: goja.getPropCallee(throws) compiler.go:433: 14: goja.loadDynamic(ReferenceError) - compiler.go:433: 15: *goja.newArrowFunc(&{{0xc000372230 () => { + compiler.go:433: 15: *goja.newArrowFunc(&{{0xc0003a55e0 () => { (function() { eval(""); ({a} = {a: 1}); @@ -18197,7 +18233,7 @@ } 0 false}}) compiler.go:433: > 0: *goja.enterFunc(&{map[a:0] 1 0 0 2 true false}) compiler.go:433: > 1: goja._loadUndef({}) - compiler.go:433: > 2: *goja.newFunc(&{0xc000372280 function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc0003a5630 function() { eval(""); ({a} = {a: 1}); } 0 false}) @@ -18232,7 +18268,7 @@ compiler.go:433: 18: goja.loadDynamic(assert) compiler.go:433: 19: goja.getPropCallee(throws) compiler.go:433: 20: goja.loadDynamic(ReferenceError) - compiler.go:433: 21: *goja.newArrowFunc(&{{0xc0003722d0 () => { + compiler.go:433: 21: *goja.newArrowFunc(&{{0xc0003a5680 () => { const ctx = {x: 1}; function t() { delete ctx.x; @@ -18247,7 +18283,7 @@ return ctx.x; } 0 false}}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 2 0 0 2 false false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc000372320 t function t() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003a56d0 t function t() { delete ctx.x; return 42; } 0 false}) @@ -18265,7 +18301,7 @@ compiler.go:433: > 7: goja.loadStashLex(1) compiler.go:433: > 8: goja._enterWith({}) compiler.go:433: > 9: goja._loadUndef({}) - compiler.go:433: > 10: *goja.newFunc(&{0xc000372370 function() { + compiler.go:433: > 10: *goja.newFunc(&{0xc0003a5720 function() { 'use strict'; ({x} = {x: t()}); } 0 true}) @@ -18293,7 +18329,7 @@ compiler.go:433: 24: goja.loadDynamic(assert) compiler.go:433: 25: goja.getPropCallee(throws) compiler.go:433: 26: goja.loadDynamic(ReferenceError) - compiler.go:433: 27: *goja.newArrowFunc(&{{0xc0003723c0 () => { + compiler.go:433: 27: *goja.newArrowFunc(&{{0xc0003a5770 () => { const ctx = {x: 1}; function t() { delete ctx.x; @@ -18314,7 +18350,7 @@ return ctx.x; } 0 false}}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 2 0 0 2 false false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc000372410 t function t() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003a57c0 t function t() { delete ctx.x; return 42; } 0 false}) @@ -18332,7 +18368,7 @@ compiler.go:433: > 7: goja.loadStashLex(1) compiler.go:433: > 8: goja._enterWith({}) compiler.go:433: > 9: goja._loadUndef({}) - compiler.go:433: > 10: *goja.newFunc(&{0xc000372460 function() { + compiler.go:433: > 10: *goja.newFunc(&{0xc0003a5810 function() { 'use strict'; const src = {}; Object.defineProperty(src, "x", { @@ -18350,7 +18386,7 @@ compiler.go:433: >> 5: goja.loadStackLex(1) compiler.go:433: >> 6: goja.loadVal({x}) compiler.go:433: >> 7: goja._newObject({}) - compiler.go:433: >> 8: *goja.newMethod(&{{0xc0003724b0 get get() { + compiler.go:433: >> 8: *goja.newMethod(&{{0xc0003a5860 get get() { return t(); } 0 true} 1}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) @@ -18379,7 +18415,7 @@ compiler.go:433: 29: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 6 ---- PASS: TestAssignBeforeInit (0.00s) +--- PASS: TestAssignBeforeInit (0.02s) === RUN TestOptChainCallee compiler.go:433: 0: *goja.bindGlobal(&{[a o] [] [] [] false}) compiler.go:433: 1: goja.loadDynamic(assert) @@ -18429,11 +18465,11 @@ compiler.go:433: 45: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestOptChainCallee (0.00s) +--- PASS: TestOptChainCallee (0.01s) === RUN TestObjectLiteralSuper compiler.go:433: 0: *goja.bindGlobal(&{[] [] [] [proto o] false}) compiler.go:433: 1: goja._newObject({}) - compiler.go:433: 2: *goja.newMethod(&{{0xc000372af0 m m() { + compiler.go:433: 2: *goja.newMethod(&{{0xc0003a5ea0 m m() { return 40; } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18442,7 +18478,7 @@ compiler.go:433: 3: *goja.defineMethodKeyed(&{m true}) compiler.go:433: 4: goja.initGlobalP(proto) compiler.go:433: 5: goja._newObject({}) - compiler.go:433: 6: *goja.newMethod(&{{0xc000372b40 m m() { + compiler.go:433: 6: *goja.newMethod(&{{0xc0003a5ef0 m m() { return super.m() + 2; } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18473,11 +18509,11 @@ compiler.go:433: 3: goja.jump(1) compiler.go:433: 4: *goja.newClass(&{ C class C { a = () => this - } 0xc000372f00 [] [] 0 0 0 false}) + } 0xc000464320 [] [] 0 0 0 false}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 0 4 false false}) compiler.go:433: > 1: goja.initStash(0) - compiler.go:433: > 2: *goja.newArrowFunc(&{{0xc000372f50 a () => this 0 true}}) + compiler.go:433: > 2: *goja.newArrowFunc(&{{0xc000464370 a () => this 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -18504,7 +18540,7 @@ compiler.go:433: 3: goja.jump(1) compiler.go:433: 4: *goja.newClass(&{ C class C { a = this - } 0xc000373310 [] [] 0 0 0 false}) + } 0xc0004645a0 [] [] 0 0 0 false}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadStack(0) compiler.go:433: > 1: goja.definePropKeyed(a) @@ -18527,12 +18563,12 @@ compiler.go:433: 1: goja._loadUndef({}) compiler.go:433: 2: goja.initGlobalP(capture) compiler.go:433: 3: goja.jump(1) - compiler.go:433: 4: *goja.newStaticFieldInit(&{0xc0003736d0 0 0}) + compiler.go:433: 4: *goja.newStaticFieldInit(&{0xc0004647d0 0 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 0 4 false false}) compiler.go:433: > 1: goja.initStash(0) compiler.go:433: > 2: goja.resolveVar1Strict(capture) - compiler.go:433: > 3: *goja.newArrowFunc(&{{0xc0003737c0 capture () => this 0 true}}) + compiler.go:433: > 3: *goja.newArrowFunc(&{{0xc000464820 capture () => this 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -18559,7 +18595,7 @@ === RUN TestClassDynCaptureThisInStaticFieldInit compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C] [] false}) compiler.go:433: 1: *goja.enterBlock(&{map[C:2684354560] 1 0}) - compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc000373a40 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc000464aa0 0 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824] 1 0 0 4 false false}) compiler.go:433: > 1: goja.initStash(0) @@ -18586,7 +18622,7 @@ === RUN TestCompileClass compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C c] [] false}) compiler.go:433: 1: goja.jump(1) - compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc000322500 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc000465360 0 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadDynamic(Math) compiler.go:433: > 1: goja.getPropCallee(random) @@ -18595,7 +18631,7 @@ compiler.go:433: > 4: goja._op_lt({}) compiler.go:433: > 5: goja.definePropKeyed(A) compiler.go:433: > 6: goja._dup({}) - compiler.go:433: > 7: *goja.newMethod(&{{0xc000322550 { + compiler.go:433: > 7: *goja.newMethod(&{{0xc0004653b0 { this.supername = super.name; } 0 true} 1}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -18610,7 +18646,7 @@ compiler.go:433: > 9: goja._pop({}) compiler.go:430: > ---- compiler.go:433: 3: goja.loadDynamic(Error) - compiler.go:433: 4: *goja.newDerivedClass(&{{0xc000322320 C class C extends Error { + compiler.go:433: 4: *goja.newDerivedClass(&{{0xc000465180 C class C extends Error { a = true; b = 1; ["b".toUpperCase()] = 2 @@ -18631,7 +18667,7 @@ static { this.supername = super.name; } - } 0xc0003224b0 [] [] 0 0 0 false}}) + } 0xc000465310 [] [] 0 0 0 false}}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({true}) compiler.go:433: > 1: goja.definePropKeyed(a) @@ -18657,27 +18693,27 @@ compiler.go:433: 6: goja.getPropCallee(toUpperCase) compiler.go:433: 7: goja.call(0) compiler.go:433: 8: goja.defineComputedKey(2) - compiler.go:433: 9: *goja.newMethod(&{{0xc000322370 M M() { + compiler.go:433: 9: *goja.newMethod(&{{0xc0004651d0 M M() { } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 10: *goja.defineMethodKeyed(&{M false}) - compiler.go:433: 11: *goja.newMethod(&{{0xc0003223c0 M1 M1() { + compiler.go:433: 11: *goja.newMethod(&{{0xc000465220 M1 M1() { } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 12: *goja.defineMethodKeyed(&{M1 false}) compiler.go:433: 13: goja.dupN(1) - compiler.go:433: 14: *goja.newMethod(&{{0xc000322410 m m() { + compiler.go:433: 14: *goja.newMethod(&{{0xc000465270 m m() { //return C.a; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 15: *goja.defineMethodKeyed(&{m false}) - compiler.go:433: 16: *goja.newMethod(&{{0xc000322460 m1 m1() { + compiler.go:433: 16: *goja.newMethod(&{{0xc0004652c0 m1 m1() { return true; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18719,12 +18755,12 @@ compiler.go:433: 50: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestCompileClass (0.00s) +--- PASS: TestCompileClass (0.01s) === RUN TestSuperInEval compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C c] [] false}) compiler.go:433: 1: *goja.enterBlock(&{map[C:2684354560] 1 0}) compiler.go:433: 2: goja.loadDynamic(Error) - compiler.go:433: 3: *goja.newDerivedClass(&{{0xc000322870 C class C extends Error { + compiler.go:433: 3: *goja.newDerivedClass(&{{0xc000465810 C class C extends Error { constructor() { eval("super()"); } @@ -18743,7 +18779,7 @@ compiler.go:433: > 8: goja._loadUndef({}) compiler.go:433: > 9: goja.cret(0) compiler.go:433: 4: goja.dupN(1) - compiler.go:433: 5: *goja.newMethod(&{{0xc0003228c0 m m() { + compiler.go:433: 5: *goja.newMethod(&{{0xc000465860 m m() { return eval("super.name"); } 0 true} 1}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:2147483649] 2 0 0 3 true false}) @@ -18789,13 +18825,13 @@ thisSet = this; this._p = v; } - } 0xc000323450 [] [] 0 0 0 false}) + } 0xc000020af0 [] [] 0 0 0 false}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({0}) compiler.go:433: > 1: goja.definePropKeyed(_p) compiler.go:430: > ---- compiler.go:433: 7: goja.dupN(1) - compiler.go:433: 8: *goja.newMethod(&{{0xc0003233b0 p get p() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000020a50 p get p() { thisGet = this; return this._p; } 0 true} 1}) @@ -18807,7 +18843,7 @@ compiler.go:433: > 5: goja.getProp(_p) compiler.go:433: > 6: goja._ret({}) compiler.go:433: 9: *goja.defineGetterKeyed(&{p false}) - compiler.go:433: 10: *goja.newMethod(&{{0xc000323400 p set p(v) { + compiler.go:433: 10: *goja.newMethod(&{{0xc000020aa0 p set p(v) { thisSet = this; this._p = v; } 1 true} 1}) @@ -18856,7 +18892,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 18: goja.dupN(1) - compiler.go:433: 19: *goja.newMethod(&{{0xc0003234a0 g g() { + compiler.go:433: 19: *goja.newMethod(&{{0xc000020b90 g g() { return super.p; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18865,7 +18901,7 @@ compiler.go:433: > 3: goja.getPropRecv(p) compiler.go:433: > 4: goja._ret({}) compiler.go:433: 20: *goja.defineMethodKeyed(&{g false}) - compiler.go:433: 21: *goja.newMethod(&{{0xc000323540 s s(v) { + compiler.go:433: 21: *goja.newMethod(&{{0xc000020c80 s s(v) { super.p = v; } 1 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -18876,7 +18912,7 @@ compiler.go:433: > 5: goja._loadUndef({}) compiler.go:433: > 6: goja._ret({}) compiler.go:433: 22: *goja.defineMethodKeyed(&{s false}) - compiler.go:433: 23: *goja.newMethod(&{{0xc000323590 inc inc() { + compiler.go:433: 23: *goja.newMethod(&{{0xc000020cd0 inc inc() { super.p++; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18889,7 +18925,7 @@ compiler.go:433: > 7: goja._loadUndef({}) compiler.go:433: > 8: goja._ret({}) compiler.go:433: 24: *goja.defineMethodKeyed(&{inc false}) - compiler.go:433: 25: *goja.newMethod(&{{0xc0003235e0 incR incR() { + compiler.go:433: 25: *goja.newMethod(&{{0xc000020d20 incR incR() { return super.p++; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18904,7 +18940,7 @@ compiler.go:433: > 9: goja.setPropRecvStrictP(p) compiler.go:433: > 10: goja._ret({}) compiler.go:433: 26: *goja.defineMethodKeyed(&{incR false}) - compiler.go:433: 27: *goja.newMethod(&{{0xc000323630 inc1 inc1() { + compiler.go:433: 27: *goja.newMethod(&{{0xc000020d70 inc1 inc1() { ++super.p; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18917,7 +18953,7 @@ compiler.go:433: > 7: goja._loadUndef({}) compiler.go:433: > 8: goja._ret({}) compiler.go:433: 28: *goja.defineMethodKeyed(&{inc1 false}) - compiler.go:433: 29: *goja.newMethod(&{{0xc000323680 inc1R inc1R() { + compiler.go:433: 29: *goja.newMethod(&{{0xc000020dc0 inc1R inc1R() { return ++super.p; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18930,7 +18966,7 @@ compiler.go:433: > 7: goja.setPropRecvStrict(p) compiler.go:433: > 8: goja._ret({}) compiler.go:433: 30: *goja.defineMethodKeyed(&{inc1R false}) - compiler.go:433: 31: *goja.newMethod(&{{0xc0003236d0 unary unary() { + compiler.go:433: 31: *goja.newMethod(&{{0xc000020e10 unary unary() { return +super.p; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18940,7 +18976,7 @@ compiler.go:433: > 4: goja._plus({}) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 32: *goja.defineMethodKeyed(&{unary false}) - compiler.go:433: 33: *goja.newMethod(&{{0xc000323720 pattern pattern() { + compiler.go:433: 33: *goja.newMethod(&{{0xc000020e60 pattern pattern() { [super.p] = [9]; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19161,7 +19197,7 @@ compiler.go:433: 235: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSuperRefDot (0.00s) +--- PASS: TestSuperRefDot (0.01s) === RUN TestPrivateRefDot compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C o] [] false}) compiler.go:433: 1: goja.jump(1) @@ -19191,13 +19227,13 @@ pattern() { [this.#p] = [9]; } - } 0xc000322820 [] [] 1 0 0 true}) + } 0xc000021cc0 [] [] 1 0 0 true}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({0}) compiler.go:433: > 1: *goja.definePrivateProp(&{0}) compiler.go:430: > ---- compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0003225f0 g g() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000021720 g g() { return this.#p; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19205,7 +19241,7 @@ compiler.go:433: > 2: *goja.getPrivatePropRes(&{p 0 0 false false}) compiler.go:433: > 3: goja._ret({}) compiler.go:433: 5: *goja.defineMethodKeyed(&{g false}) - compiler.go:433: 6: *goja.newMethod(&{{0xc000322640 s s(v) { + compiler.go:433: 6: *goja.newMethod(&{{0xc000021770 s s(v) { this.#p = v; } 1 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -19215,7 +19251,7 @@ compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 7: *goja.defineMethodKeyed(&{s false}) - compiler.go:433: 8: *goja.newMethod(&{{0xc000322690 inc inc() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000021810 inc inc() { this.#p++; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19227,7 +19263,7 @@ compiler.go:433: > 6: goja._loadUndef({}) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 9: *goja.defineMethodKeyed(&{inc false}) - compiler.go:433: 10: *goja.newMethod(&{{0xc0003226e0 incR incR() { + compiler.go:433: 10: *goja.newMethod(&{{0xc000021860 incR incR() { return this.#p++; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19241,7 +19277,7 @@ compiler.go:433: > 8: *goja.setPrivatePropResP(&{p 0 0 false false}) compiler.go:433: > 9: goja._ret({}) compiler.go:433: 11: *goja.defineMethodKeyed(&{incR false}) - compiler.go:433: 12: *goja.newMethod(&{{0xc000322730 inc1 inc1() { + compiler.go:433: 12: *goja.newMethod(&{{0xc0000218b0 inc1 inc1() { ++this.#p; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19253,7 +19289,7 @@ compiler.go:433: > 6: goja._loadUndef({}) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 13: *goja.defineMethodKeyed(&{inc1 false}) - compiler.go:433: 14: *goja.newMethod(&{{0xc000322780 inc1R inc1R() { + compiler.go:433: 14: *goja.newMethod(&{{0xc000021900 inc1R inc1R() { return ++this.#p; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19265,7 +19301,7 @@ compiler.go:433: > 6: *goja.setPrivatePropRes(&{p 0 0 false false}) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 15: *goja.defineMethodKeyed(&{inc1R false}) - compiler.go:433: 16: *goja.newMethod(&{{0xc0003227d0 pattern pattern() { + compiler.go:433: 16: *goja.newMethod(&{{0xc000021c70 pattern pattern() { [this.#p] = [9]; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19413,13 +19449,13 @@ pattern() { eval("[this.#p] = [9]"); } - } 0xc000322f00 [p] [] 1 0 0 true}) + } 0xc0003bc410 [p] [] 1 0 0 true}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({0}) compiler.go:433: > 1: *goja.definePrivateProp(&{0}) compiler.go:430: > ---- compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc000322d70 g g() { + compiler.go:433: 4: *goja.newMethod(&{{0xc0003bc280 g g() { return eval("this.#p"); } 0 true} 1}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:2147483649] 2 0 0 3 true false}) @@ -19431,7 +19467,7 @@ compiler.go:433: > 6: goja.callEvalStrict(1) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 5: *goja.defineMethodKeyed(&{g false}) - compiler.go:433: 6: *goja.newMethod(&{{0xc000322dc0 s s(v) { + compiler.go:433: 6: *goja.newMethod(&{{0xc0003bc2d0 s s(v) { eval("this.#p = v"); } 1 true} 1}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741825 arguments:2147483650 v:1073741824] 3 0 1 3 true false}) @@ -19445,7 +19481,7 @@ compiler.go:433: > 8: goja._loadUndef({}) compiler.go:433: > 9: goja._ret({}) compiler.go:433: 7: *goja.defineMethodKeyed(&{s false}) - compiler.go:433: 8: *goja.newMethod(&{{0xc000322e10 incR incR() { + compiler.go:433: 8: *goja.newMethod(&{{0xc0003bc320 incR incR() { return eval("this.#p++"); } 0 true} 1}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:2147483649] 2 0 0 3 true false}) @@ -19457,7 +19493,7 @@ compiler.go:433: > 6: goja.callEvalStrict(1) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 9: *goja.defineMethodKeyed(&{incR false}) - compiler.go:433: 10: *goja.newMethod(&{{0xc000322e60 inc1R inc1R() { + compiler.go:433: 10: *goja.newMethod(&{{0xc0003bc370 inc1R inc1R() { return eval("++this.#p"); } 0 true} 1}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:2147483649] 2 0 0 3 true false}) @@ -19469,7 +19505,7 @@ compiler.go:433: > 6: goja.callEvalStrict(1) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 11: *goja.defineMethodKeyed(&{inc1R false}) - compiler.go:433: 12: *goja.newMethod(&{{0xc000322eb0 pattern pattern() { + compiler.go:433: 12: *goja.newMethod(&{{0xc0003bc3c0 pattern pattern() { eval("[this.#p] = [9]"); } 0 true} 1}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:2147483649] 2 0 0 3 true false}) @@ -19566,7 +19602,7 @@ compiler.go:433: 94: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 10 ---- PASS: TestPrivateRefDotEval (0.00s) +--- PASS: TestPrivateRefDotEval (0.01s) === RUN TestSuperRefDotCallee compiler.go:433: 0: *goja.bindGlobal(&{[] [] [P C o] [] false}) compiler.go:433: 1: goja.jump(1) @@ -19578,13 +19614,13 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0000206e0 p get p() { + compiler.go:433: 4: *goja.newMethod(&{{0xc0003bc690 p get p() { return function() { return this; }; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc000020730 function() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003bc6e0 function() { return this; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -19603,7 +19639,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 12: goja.dupN(1) - compiler.go:433: 13: *goja.newMethod(&{{0xc000020780 m m() { + compiler.go:433: 13: *goja.newMethod(&{{0xc0003bc730 m m() { return super.p(); } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19647,13 +19683,13 @@ thisSet = this; this._p = v; } - } 0xc000021540 [] [] 0 0 0 false}) + } 0xc0003bd090 [] [] 0 0 0 false}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({0}) compiler.go:433: > 1: goja.definePropKeyed(_p) compiler.go:430: > ---- compiler.go:433: 9: goja.dupN(1) - compiler.go:433: 10: *goja.newMethod(&{{0xc0000214a0 p get p() { + compiler.go:433: 10: *goja.newMethod(&{{0xc0003bcff0 p get p() { thisGet = this; return this._p; } 0 true} 1}) @@ -19665,7 +19701,7 @@ compiler.go:433: > 5: goja.getProp(_p) compiler.go:433: > 6: goja._ret({}) compiler.go:433: 11: *goja.defineGetterKeyed(&{p false}) - compiler.go:433: 12: *goja.newMethod(&{{0xc0000214f0 p set p(v) { + compiler.go:433: 12: *goja.newMethod(&{{0xc0003bd040 p set p(v) { thisSet = this; this._p = v; } 1 true} 1}) @@ -19711,7 +19747,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 20: goja.dupN(1) - compiler.go:433: 21: *goja.newMethod(&{{0xc000021590 g g() { + compiler.go:433: 21: *goja.newMethod(&{{0xc0003bd0e0 g g() { return super[PROP]; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19721,7 +19757,7 @@ compiler.go:433: > 4: goja._getElemRecv({}) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 22: *goja.defineMethodKeyed(&{g false}) - compiler.go:433: 23: *goja.newMethod(&{{0xc0000215e0 s s(v) { + compiler.go:433: 23: *goja.newMethod(&{{0xc0003bd130 s s(v) { super[PROP] = v; } 1 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -19733,7 +19769,7 @@ compiler.go:433: > 6: goja._loadUndef({}) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 24: *goja.defineMethodKeyed(&{s false}) - compiler.go:433: 25: *goja.newMethod(&{{0xc000021630 inc inc() { + compiler.go:433: 25: *goja.newMethod(&{{0xc0003bd180 inc inc() { super[PROP]++; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19747,7 +19783,7 @@ compiler.go:433: > 8: goja._loadUndef({}) compiler.go:433: > 9: goja._ret({}) compiler.go:433: 26: *goja.defineMethodKeyed(&{inc false}) - compiler.go:433: 27: *goja.newMethod(&{{0xc000021680 incR incR() { + compiler.go:433: 27: *goja.newMethod(&{{0xc0003bd1d0 incR incR() { return super[PROP]++; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19763,7 +19799,7 @@ compiler.go:433: > 10: goja._setElemRecvStrictP({}) compiler.go:433: > 11: goja._ret({}) compiler.go:433: 28: *goja.defineMethodKeyed(&{incR false}) - compiler.go:433: 29: *goja.newMethod(&{{0xc0000216d0 inc1 inc1() { + compiler.go:433: 29: *goja.newMethod(&{{0xc0003bd220 inc1 inc1() { ++super[PROP]; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19777,7 +19813,7 @@ compiler.go:433: > 8: goja._loadUndef({}) compiler.go:433: > 9: goja._ret({}) compiler.go:433: 30: *goja.defineMethodKeyed(&{inc1 false}) - compiler.go:433: 31: *goja.newMethod(&{{0xc000021720 inc1R inc1R() { + compiler.go:433: 31: *goja.newMethod(&{{0xc0003bd270 inc1R inc1R() { return ++super[PROP]; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19791,7 +19827,7 @@ compiler.go:433: > 8: goja._setElemRecvStrict({}) compiler.go:433: > 9: goja._ret({}) compiler.go:433: 32: *goja.defineMethodKeyed(&{inc1R false}) - compiler.go:433: 33: *goja.newMethod(&{{0xc000021770 pattern pattern() { + compiler.go:433: 33: *goja.newMethod(&{{0xc0003bd2c0 pattern pattern() { [super[PROP]] = [9]; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -20004,9 +20040,9 @@ compiler.go:433: 226: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSuperRefBracket (0.00s) +--- PASS: TestSuperRefBracket (0.01s) === RUN TestSuperRefBracketEvalOrder - compiler.go:433: 0: *goja.newFunc(&{0xc000021b30 key function key() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003bd630 key function key() { keyCallCount++; C.prototype.__proto__ = null; return "k"; @@ -20026,7 +20062,7 @@ compiler.go:433: 2: goja.loadVal({0}) compiler.go:433: 3: goja.initGlobalP(keyCallCount) compiler.go:433: 4: goja.jump(1) - compiler.go:433: 5: *goja.newClass(&{0xc000021b80 C class C { + compiler.go:433: 5: *goja.newClass(&{0xc0003bd680 C class C { constructor() { super[key()]++; } @@ -20047,7 +20083,7 @@ compiler.go:433: 8: goja.loadDynamic(assert) compiler.go:433: 9: goja.getPropCallee(throws) compiler.go:433: 10: goja.loadDynamic(TypeError) - compiler.go:433: 11: *goja.newArrowFunc(&{{0xc000021bd0 () => new C 0 false}}) + compiler.go:433: 11: *goja.newArrowFunc(&{{0xc0003bd6d0 () => new C 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamic(C) compiler.go:433: > 2: goja._new(0) @@ -20062,7 +20098,7 @@ compiler.go:433: 19: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSuperRefBracketEvalOrder (0.00s) +--- PASS: TestSuperRefBracketEvalOrder (0.01s) === RUN TestSuperRefBracketCallee compiler.go:433: 0: *goja.bindGlobal(&{[] [] [PROP P C o] [] false}) compiler.go:433: 1: goja.loadVal({p}) @@ -20076,13 +20112,13 @@ } } [] [] 0 0 0 false}) compiler.go:433: 5: goja.dupN(1) - compiler.go:433: 6: *goja.newMethod(&{{0xc0006b20f0 p get p() { + compiler.go:433: 6: *goja.newMethod(&{{0xc0003bdb30 p get p() { return function() { return this; }; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0006b2140 function() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003bdb80 function() { return this; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -20101,7 +20137,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 14: goja.dupN(1) - compiler.go:433: 15: *goja.newMethod(&{{0xc0006b2190 m m() { + compiler.go:433: 15: *goja.newMethod(&{{0xc0003bdbd0 m m() { return super[PROP](); } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -20133,7 +20169,7 @@ compiler.go:433: 2: goja.initGlobalP(result) compiler.go:433: 3: goja.jump(1) compiler.go:433: 4: goja.loadDynamic(Object) - compiler.go:433: 5: *goja.newDerivedClass(&{{0xc0006b24b0 Derived class Derived extends Object { + compiler.go:433: 5: *goja.newDerivedClass(&{{0xc0003bdef0 Derived class Derived extends Object { constructor() { super(); result = super.constructor === Object; @@ -20178,7 +20214,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestClassNamedEval (0.00s) === RUN TestClassNonDerived - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2960 initF function initF() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004fcb90 initF function initF() { } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) @@ -20187,7 +20223,7 @@ compiler.go:433: 2: goja.jump(1) compiler.go:433: 3: *goja.newClass(&{ C class C { f = initF() - } 0xc0006b29b0 [] [] 0 0 0 false}) + } 0xc0004fcbe0 [] [] 0 0 0 false}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadDynamicCallee(initF) compiler.go:433: > 1: goja.call(0) @@ -20207,7 +20243,7 @@ compiler.go:433: 2: goja.jump(1) compiler.go:433: 3: *goja.newClass(&{ class {get f() {}} [] [] 0 0 0 false}) compiler.go:433: 4: goja.dupN(1) - compiler.go:433: 5: *goja.newMethod(&{{0xc0006b2c30 f get f() {} 0 true} 1}) + compiler.go:433: 5: *goja.newMethod(&{{0xc0004fce60 f get f() {} 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -20234,7 +20270,7 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0006b2ff0 a a() { + compiler.go:433: 4: *goja.newMethod(&{{0xc0004fd220 a a() { return Error; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -20254,7 +20290,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 12: goja.dupN(1) - compiler.go:433: 13: *goja.newMethod(&{{0xc0006b3040 m m() { + compiler.go:433: 13: *goja.newMethod(&{{0xc0004fd270 m m() { class Inner extends super.a() { } return new Inner(); @@ -20285,7 +20321,7 @@ compiler.go:433: 24: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestClassSuperInHeritage (0.00s) +--- PASS: TestClassSuperInHeritage (0.01s) === RUN TestClassSuperInHeritageExpr compiler.go:433: 0: *goja.bindGlobal(&{[] [] [P C] [] false}) compiler.go:433: 1: goja.jump(1) @@ -20295,7 +20331,7 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0006b3540 a a() { + compiler.go:433: 4: *goja.newMethod(&{{0xc0004fd770 a a() { return Error; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -20317,7 +20353,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 12: goja.dupN(1) - compiler.go:433: 13: *goja.newMethod(&{{0xc0006b3590 m m() { + compiler.go:433: 13: *goja.newMethod(&{{0xc0004fd7c0 m m() { function f(cls) { return new cls(); } @@ -20325,7 +20361,7 @@ }) } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0006b35e0 f function f(cls) { + compiler.go:433: > 1: *goja.newFunc(&{0xc0004fd810 f function f(cls) { return new cls(); } 1 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 1}) @@ -20362,7 +20398,7 @@ === RUN TestClassReferToBinding compiler.go:433: 0: *goja.bindGlobal(&{[] [] [c] [CC] false}) compiler.go:433: 1: *goja.enterBlock(&{map[] 1 0}) - compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc0006b38b0 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc0004fdae0 0 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({40}) compiler.go:433: > 1: goja.definePropKeyed(T) @@ -20370,7 +20406,7 @@ compiler.go:433: 3: *goja.newClass(&{ C class C { static T = 40 f = C.T + 2 - } 0xc0006b3810 [] [] 0 0 0 false}) + } 0xc0004fda40 [] [] 0 0 0 false}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadStashLex(0) compiler.go:433: > 1: goja.getProp(T) @@ -20394,7 +20430,7 @@ === RUN TestClassReferToBindingInStaticDecl compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C] [] false}) compiler.go:433: 1: *goja.enterBlock(&{map[] 1 0}) - compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc0006b3ae0 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc0004fdd10 0 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadStashLex(0) compiler.go:433: > 1: goja.getProp(name) @@ -20416,7 +20452,7 @@ === RUN TestClassReferToBindingInStaticEval compiler.go:433: 0: *goja.bindGlobal(&{[] [] [] [CC] false}) compiler.go:433: 1: *goja.enterBlock(&{map[C:2684354560] 1 0}) - compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc0006b3d10 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc00050a000 0 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824] 1 0 0 4 false false}) compiler.go:433: > 1: goja.initStash(0) @@ -20442,7 +20478,7 @@ compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(throws) compiler.go:433: 2: goja.loadDynamic(ReferenceError) - compiler.go:433: 3: *goja.newArrowFunc(&{{0xc0003361e0 () => { + compiler.go:433: 3: *goja.newArrowFunc(&{{0xc00050a410 () => { class C extends C { } } 0 false}}) @@ -20470,7 +20506,7 @@ compiler.go:433: 4: goja.jump(1) compiler.go:433: 5: *goja.newClass(&{ class {} [] [] 0 0 0 false}) compiler.go:433: 6: goja._endVariadic({}) - compiler.go:433: 7: *goja.newDerivedClass(&{{0xc000336500 C class C extends class {} { + compiler.go:433: 7: *goja.newDerivedClass(&{{0xc00050a730 C class C extends class {} { constructor() { f = () => super(); f(); @@ -20480,7 +20516,7 @@ compiler.go:433: > 1: goja.loadStack(0) compiler.go:433: > 2: goja.initStashP(0) compiler.go:433: > 3: goja.resolveVar1Strict(f) - compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000336550 f () => super() 0 true}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc00050a780 f () => super() 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.resolveThisStash(0) compiler.go:433: >> 2: goja.superCall(0) @@ -20510,7 +20546,7 @@ compiler.go:433: 6: goja.initGlobalP(P) compiler.go:433: 7: goja.jump(1) compiler.go:433: 8: goja.loadDynamic(P) - compiler.go:433: 9: *goja.newDerivedClass(&{{0xc000336910 C class C extends P { + compiler.go:433: 9: *goja.newDerivedClass(&{{0xc00050ab40 C class C extends P { constructor() { f = () => () => super(); f()(); @@ -20520,9 +20556,9 @@ compiler.go:433: > 1: goja.loadStack(0) compiler.go:433: > 2: goja.initStashP(0) compiler.go:433: > 3: goja.resolveVar1Strict(f) - compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000336960 f () => () => super() 0 true}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc00050ab90 f () => () => super() 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: >> 1: *goja.newArrowFunc(&{{0xc0003369b0 () => super() 0 true}}) + compiler.go:433: >> 1: *goja.newArrowFunc(&{{0xc00050abe0 () => super() 0 true}}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >>> 1: goja.resolveThisStash(0) compiler.go:433: >>> 2: goja.superCall(0) @@ -20558,7 +20594,7 @@ compiler.go:433: 8: goja.call(3) compiler.go:433: 9: goja._pop({}) compiler.go:433: 10: goja._newObject({}) - compiler.go:433: 11: *goja.newMethod(&{{0xc000336c80 f f() { + compiler.go:433: 11: *goja.newMethod(&{{0xc00050aeb0 f f() { return eval("this"); } 0 false} 1}) compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824 arguments:1073741825] 2 0 0 3 true true}) @@ -20599,7 +20635,7 @@ compiler.go:433: 0: *goja.bindGlobal(&{[C] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(C) compiler.go:433: 2: *goja.enterBlock(&{map[] 0 0}) - compiler.go:433: 3: *goja.newStaticFieldInit(&{0xc000337130 0 0}) + compiler.go:433: 3: *goja.newStaticFieldInit(&{0xc00050b310 0 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824] 1 0 0 4 false false}) compiler.go:433: > 1: goja.initStash(0) @@ -20650,14 +20686,14 @@ compiler.go:433: 3: goja._loadUndef({}) compiler.go:433: 4: goja.initGlobalP(f2) compiler.go:433: 5: *goja.enterBlock(&{map[C:2684354560] 1 0}) - compiler.go:433: 6: *goja.newStaticFieldInit(&{0xc0003376d0 1 0}) + compiler.go:433: 6: *goja.newStaticFieldInit(&{0xc00050bef0 1 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: *goja.enterFunc(&{map[ this:1073741824] 1 0 0 4 false false}) compiler.go:433: > 1: goja.initStash(0) compiler.go:433: > 2: goja.loadVal({42}) compiler.go:433: > 3: *goja.definePrivateProp(&{0}) compiler.go:433: > 4: goja._dup({}) - compiler.go:433: > 5: *goja.newMethod(&{{0xc000337720 { + compiler.go:433: > 5: *goja.newMethod(&{{0xc000398000 { f2 = o => eval("o.#a"); assert.sameValue(C.#a, 42); assert.sameValue((() => C.#a)(), 42); @@ -20665,7 +20701,7 @@ compiler.go:433: >> 0: *goja.enterFunc(&{map[ this:1073741824] 1 0 0 4 true false}) compiler.go:433: >> 1: goja.initStash(0) compiler.go:433: >> 2: goja.resolveVar1Strict(f2) - compiler.go:433: >> 3: *goja.newArrowFunc(&{{0xc000337770 f2 o => eval("o.#a") 1 true}}) + compiler.go:433: >> 3: *goja.newArrowFunc(&{{0xc000398050 f2 o => eval("o.#a") 1 true}}) compiler.go:433: >>> 0: *goja.enterFunc(&{map[o:1073741824] 1 0 1 2 true false}) compiler.go:433: >>> 1: goja.loadDynamicCallee(eval) compiler.go:433: >>> 2: goja.loadVal({o.#a}) @@ -20682,7 +20718,7 @@ compiler.go:433: >> 12: goja.loadDynamic(assert) compiler.go:433: >> 13: goja.getPropCallee(sameValue) compiler.go:433: >> 14: goja._loadUndef({}) - compiler.go:433: >> 15: *goja.newArrowFunc(&{{0xc000337810 () => C.# 0 true}}) + compiler.go:433: >> 15: *goja.newArrowFunc(&{{0xc0003980f0 () => C.# 0 true}}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >>> 1: goja.loadStashLex(33554432) compiler.go:433: >>> 2: *goja.getPrivatePropRes(&{a 0 0 true false}) @@ -20697,7 +20733,7 @@ compiler.go:433: > 7: goja._pop({}) compiler.go:430: > ---- compiler.go:433: 7: goja.resolveVar1Strict(f1) - compiler.go:433: 8: *goja.newArrowFunc(&{{0xc000337630 f1 o => eval("o.#a") 1 true}}) + compiler.go:433: 8: *goja.newArrowFunc(&{{0xc00050be00 f1 o => eval("o.#a") 1 true}}) compiler.go:433: > 0: *goja.enterFunc(&{map[o:1073741824] 1 0 1 2 true false}) compiler.go:433: > 1: goja.loadDynamicCallee(eval) compiler.go:433: > 2: goja.loadVal({o.#a}) @@ -20721,7 +20757,7 @@ compiler.go:433: 17: goja.loadDynamic(assert) compiler.go:433: 18: goja.getPropCallee(throws) compiler.go:433: 19: goja.loadDynamic(SyntaxError) - compiler.go:433: 20: *goja.newArrowFunc(&{{0xc000337860 () => f1(C) 0 false}}) + compiler.go:433: 20: *goja.newArrowFunc(&{{0xc000398140 () => f1(C) 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamicCallee(f1) compiler.go:433: > 2: goja.loadDynamic(C) @@ -20739,7 +20775,7 @@ compiler.go:433: 30: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 5 ---- PASS: TestClassPrivateElemInEval (0.00s) +--- PASS: TestClassPrivateElemInEval (0.01s) === RUN TestClassPrivateElemInIndirectEval compiler.go:433: 0: *goja.bindGlobal(&{[] [] [f1 f2 C] [] false}) compiler.go:433: 1: goja._loadUndef({}) @@ -20747,18 +20783,18 @@ compiler.go:433: 3: goja._loadUndef({}) compiler.go:433: 4: goja.initGlobalP(f2) compiler.go:433: 5: goja.jump(1) - compiler.go:433: 6: *goja.newStaticFieldInit(&{0xc0003d40a0 1 0}) + compiler.go:433: 6: *goja.newStaticFieldInit(&{0xc0003988c0 1 0}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({42}) compiler.go:433: > 1: *goja.definePrivateProp(&{0}) compiler.go:433: > 2: goja._dup({}) - compiler.go:433: > 3: *goja.newMethod(&{{0xc0003d40f0 { + compiler.go:433: > 3: *goja.newMethod(&{{0xc000398910 { f2 = o => (0, eval)("o.#a"); assert.throws(SyntaxError, () => (0, eval)("C.#a")); } 0 true} 1}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.resolveVar1Strict(f2) - compiler.go:433: >> 2: *goja.newArrowFunc(&{{0xc0003d4140 f2 o => (0, eval)("o.#a") 1 true}}) + compiler.go:433: >> 2: *goja.newArrowFunc(&{{0xc000398960 f2 o => (0, eval)("o.#a") 1 true}}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: >>> 1: goja._loadUndef({}) compiler.go:433: >>> 2: goja.loadDynamic(eval) @@ -20769,7 +20805,7 @@ compiler.go:433: >> 4: goja.loadDynamic(assert) compiler.go:433: >> 5: goja.getPropCallee(throws) compiler.go:433: >> 6: goja.loadDynamic(SyntaxError) - compiler.go:433: >> 7: *goja.newArrowFunc(&{{0xc0003d4190 () => (0, eval)("C.#a") 0 true}}) + compiler.go:433: >> 7: *goja.newArrowFunc(&{{0xc0003989b0 () => (0, eval)("C.#a") 0 true}}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >>> 1: goja._loadUndef({}) compiler.go:433: >>> 2: goja.loadDynamic(eval) @@ -20784,7 +20820,7 @@ compiler.go:433: > 5: goja._pop({}) compiler.go:430: > ---- compiler.go:433: 7: goja.resolveVar1Strict(f1) - compiler.go:433: 8: *goja.newArrowFunc(&{{0xc0003d4050 f1 o => (0, eval)("o.#a") 1 true}}) + compiler.go:433: 8: *goja.newArrowFunc(&{{0xc000398870 f1 o => (0, eval)("o.#a") 1 true}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja.loadDynamic(eval) @@ -20806,7 +20842,7 @@ compiler.go:433: 15: goja.loadDynamic(assert) compiler.go:433: 16: goja.getPropCallee(throws) compiler.go:433: 17: goja.loadDynamic(SyntaxError) - compiler.go:433: 18: *goja.newArrowFunc(&{{0xc0003d4230 () => f1(C) 0 false}}) + compiler.go:433: 18: *goja.newArrowFunc(&{{0xc000398a00 () => f1(C) 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamicCallee(f1) compiler.go:433: > 2: goja.loadDynamic(C) @@ -20817,7 +20853,7 @@ compiler.go:433: 21: goja.loadDynamic(assert) compiler.go:433: 22: goja.getPropCallee(throws) compiler.go:433: 23: goja.loadDynamic(SyntaxError) - compiler.go:433: 24: *goja.newArrowFunc(&{{0xc0003d45f0 () => f2(C) 0 false}}) + compiler.go:433: 24: *goja.newArrowFunc(&{{0xc000398aa0 () => f2(C) 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadDynamicCallee(f2) compiler.go:433: > 2: goja.loadDynamic(C) @@ -20832,7 +20868,7 @@ compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(throws) compiler.go:433: 2: goja.loadDynamic(SyntaxError) - compiler.go:433: 3: *goja.newArrowFunc(&{{0xc0003d4b90 () => { + compiler.go:433: 3: *goja.newArrowFunc(&{{0xc000398fa0 () => { class C { static #a = 42; static { @@ -20842,12 +20878,12 @@ } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) compiler.go:433: > 1: goja.jump(1) - compiler.go:433: > 2: *goja.newStaticFieldInit(&{0xc0003d4be0 1 0}) + compiler.go:433: > 2: *goja.newStaticFieldInit(&{0xc000398ff0 1 0}) compiler.go:428: >> ---- init_fields: compiler.go:433: >> 0: goja.loadVal({42}) compiler.go:433: >> 1: *goja.definePrivateProp(&{0}) compiler.go:433: >> 2: goja._dup({}) - compiler.go:433: >> 3: *goja.newMethod(&{{0xc0003d4c30 { + compiler.go:433: >> 3: *goja.newMethod(&{{0xc000399040 { Function("o", "return o.#a"); } 0 true} 1}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) @@ -20893,23 +20929,23 @@ static getter(inst) { return inst.#m(); } - } 0xc0003d5450 [] [] 1 2 0 true}) + } 0xc000399860 [] [] 1 2 0 true}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({42}) compiler.go:433: > 1: *goja.definePrivateProp(&{0}) compiler.go:430: > ---- compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0003d5270 #b get #b() {} 0 true} 1}) + compiler.go:433: 4: *goja.newMethod(&{{0xc000399680 #b get #b() {} 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 5: *goja.definePrivateGetter(&{{0 3}}) - compiler.go:433: 6: *goja.newMethod(&{{0xc0003d52c0 #b set #b(_) {} 1 true} 1}) + compiler.go:433: 6: *goja.newMethod(&{{0xc0003996d0 #b set #b(_) {} 1 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 7: *goja.definePrivateSetter(&{{0 3}}) - compiler.go:433: 8: *goja.newMethod(&{{0xc0003d5310 c get c() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000399720 c get c() { return this.#a; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -20917,7 +20953,7 @@ compiler.go:433: > 2: *goja.getPrivatePropRes(&{a 0 0 false false}) compiler.go:433: > 3: goja._ret({}) compiler.go:433: 9: *goja.defineGetterKeyed(&{c false}) - compiler.go:433: 10: *goja.newMethod(&{{0xc0003d5360 #m #m() { + compiler.go:433: 10: *goja.newMethod(&{{0xc000399770 #m #m() { return this.#a; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -20926,7 +20962,7 @@ compiler.go:433: > 3: goja._ret({}) compiler.go:433: 11: *goja.definePrivateMethod(&{1 3}) compiler.go:433: 12: goja._pop({}) - compiler.go:433: 13: *goja.newMethod(&{{0xc0003d53b0 getter getter(inst) { + compiler.go:433: 13: *goja.newMethod(&{{0xc0003997c0 getter getter(inst) { return inst.#m(); } 1 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -20951,7 +20987,7 @@ compiler.go:433: 28: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestClassPrivateElementsDecl (0.00s) +--- PASS: TestClassPrivateElementsDecl (0.01s) === RUN TestPrivateIn compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C c] [] false}) compiler.go:433: 1: goja.jump(1) @@ -20960,12 +20996,12 @@ static check(inst) { return #a in inst; } - } 0xc0003d5860 [] [] 1 0 0 true}) + } 0xc000399c20 [] [] 1 0 0 true}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja.loadVal({42}) compiler.go:433: > 1: *goja.definePrivateProp(&{0}) compiler.go:430: > ---- - compiler.go:433: 3: *goja.newMethod(&{{0xc0003d5810 check check(inst) { + compiler.go:433: 3: *goja.newMethod(&{{0xc000399bd0 check check(inst) { return #a in inst; } 1 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -21095,7 +21131,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestKeywordsAsLabels (0.00s) === RUN TestThisResolutionWithArg - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5ef0 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a43c0 f function f(arg) { capture = () => this; // move 'this' to stash return [this, arg]; } 1 false}) @@ -21104,7 +21140,7 @@ compiler.go:433: > 2: goja.loadStack(0) compiler.go:433: > 3: goja.initStashP(0) compiler.go:433: > 4: goja.resolveVar1(capture) - compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc000372000 capture () => this 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc0003a4410 capture () => this 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -21144,9 +21180,9 @@ compiler.go:433: 27: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestThisResolutionWithArg (0.00s) +--- PASS: TestThisResolutionWithArg (0.01s) === RUN TestThisResolutionArgInStash - compiler.go:433: 0: *goja.newFunc(&{0xc0003722d0 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4820 f function f(arg) { capture = () => this + arg; // move 'this' and arguments to stash return [this, arg]; } 1 false}) @@ -21154,7 +21190,7 @@ compiler.go:433: > 1: goja._boxThis({}) compiler.go:433: > 2: goja.initStash(1) compiler.go:433: > 3: goja.resolveVar1(capture) - compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000372320 capture () => this + arg 0 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc0003a4870 capture () => this + arg 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(1) compiler.go:433: >> 2: goja.loadStashLex(0) @@ -21198,7 +21234,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestThisResolutionArgInStash (0.00s) === RUN TestThisResolutionWithStackVar - compiler.go:433: 0: *goja.newFunc(&{0xc000372640 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4b90 f function f(arg) { const _ = 1; // a stack variable capture = () => this + arg; // move 'this' and arguments to stash return [this, arg]; @@ -21210,7 +21246,7 @@ compiler.go:433: > 4: goja.loadVal({1}) compiler.go:433: > 5: goja.initStack1P(1) compiler.go:433: > 6: goja.resolveVar1(capture) - compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc000372690 capture () => this + arg 0 false}}) + compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc0003a4be0 capture () => this + arg 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(1) compiler.go:433: >> 2: goja.loadStashLex(0) @@ -21256,7 +21292,7 @@ === RUN TestForInLoopContinue compiler.go:433: 0: *goja.bindGlobal(&{[globalSink] [] [] [] false}) compiler.go:433: 1: goja._loadUndef({}) - compiler.go:433: 2: *goja.newFunc(&{0xc000372c30 function() { + compiler.go:433: 2: *goja.newFunc(&{0xc0003a5130 function() { const data = [{disabled: true}, {}]; function dummy() {} function f1() {} @@ -21273,17 +21309,17 @@ f(); } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 3 1 0 1 false false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc000372cd0 dummy function dummy() {} 0 false}) + compiler.go:433: > 1: *goja.newFunc(&{0xc0003a5180 dummy function dummy() {} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja._loadUndef({}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 2: goja.initStashP(0) - compiler.go:433: > 3: *goja.newFunc(&{0xc000372d70 f1 function f1() {} 0 false}) + compiler.go:433: > 3: *goja.newFunc(&{0xc0003a51d0 f1 function f1() {} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja._loadUndef({}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 4: goja.initStashP(1) - compiler.go:433: > 5: *goja.newFunc(&{0xc000372e10 f function f() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0003a5220 f function f() { dummy(); // move dummy to stash (so that f1 is at index 1) for (const d of data) { if (d.disabled) continue; @@ -21309,7 +21345,7 @@ compiler.go:433: >> 15: *goja.leaveBlock(&{0 true}) compiler.go:433: >> 16: goja.jump(-8) compiler.go:433: >> 17: goja.resolveVar1(globalSink) - compiler.go:433: >> 18: *goja.newArrowFunc(&{{0xc000372eb0 globalSink () => d 0 false}}) + compiler.go:433: >> 18: *goja.newArrowFunc(&{{0xc0003a5270 globalSink () => d 0 false}}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >>> 1: goja.loadStashLex(0) compiler.go:433: >>> 2: goja._ret({}) @@ -21348,7 +21384,7 @@ === RUN TestForInLoopContinueOuter compiler.go:433: 0: *goja.bindGlobal(&{[globalSink] [] [] [] false}) compiler.go:433: 1: goja._loadUndef({}) - compiler.go:433: 2: *goja.newFunc(&{0xc000373810 function() { + compiler.go:433: 2: *goja.newFunc(&{0xc0003a5810 function() { const data = [{disabled: true}, {}]; function dummy1() {} function f1() {} @@ -21372,17 +21408,17 @@ f(); } 0 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 3 1 0 1 false false}) - compiler.go:433: > 1: *goja.newFunc(&{0xc000373860 dummy1 function dummy1() {} 0 false}) + compiler.go:433: > 1: *goja.newFunc(&{0xc0003a5860 dummy1 function dummy1() {} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja._loadUndef({}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 2: goja.initStashP(0) - compiler.go:433: > 3: *goja.newFunc(&{0xc0003738b0 f1 function f1() {} 0 false}) + compiler.go:433: > 3: *goja.newFunc(&{0xc0003a58b0 f1 function f1() {} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja._loadUndef({}) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 4: goja.initStashP(1) - compiler.go:433: > 5: *goja.newFunc(&{0xc000373950 f function f() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0003a5900 f function f() { dummy1(); let counter = 0; OUTER: for (let i = 0; i < 1; i++) { @@ -21426,7 +21462,7 @@ compiler.go:433: >> 26: goja._enumPopClose({}) compiler.go:433: >> 27: goja.jump(13) compiler.go:433: >> 28: goja.resolveVar1(globalSink) - compiler.go:433: >> 29: *goja.newArrowFunc(&{{0xc0003739a0 globalSink () => d 0 false}}) + compiler.go:433: >> 29: *goja.newArrowFunc(&{{0xc0003a5950 globalSink () => d 0 false}}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >>> 1: goja.loadStashLex(0) compiler.go:433: >>> 2: goja._ret({}) @@ -21478,7 +21514,7 @@ compiler.go:433: 4: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 2 ---- PASS: TestForInLoopContinueOuter (0.00s) +--- PASS: TestForInLoopContinueOuter (0.01s) === RUN TestLexicalDeclInSwitch compiler.go:433: 0: goja.loadVal({0}) compiler.go:433: 1: *goja.enterBlock(&{map[] 0 1}) @@ -21510,7 +21546,7 @@ set; async; static; - } 0xc0003723c0 [] [] 0 0 0 false}) + } 0xc000464500 [] [] 0 0 0 false}) compiler.go:428: > ---- init_fields: compiler.go:433: > 0: goja._loadUndef({}) compiler.go:433: > 1: goja.definePropKeyed(get) @@ -21536,22 +21572,22 @@ static() {} } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc000372820 get get() {} 0 true} 1}) + compiler.go:433: 4: *goja.newMethod(&{{0xc000464960 get get() {} 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 5: *goja.defineMethodKeyed(&{get false}) - compiler.go:433: 6: *goja.newMethod(&{{0xc000372870 set set() {} 0 true} 1}) + compiler.go:433: 6: *goja.newMethod(&{{0xc0004649b0 set set() {} 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 7: *goja.defineMethodKeyed(&{set false}) - compiler.go:433: 8: *goja.newMethod(&{{0xc0003728c0 async async() {} 0 true} 1}) + compiler.go:433: 8: *goja.newMethod(&{{0xc000464a50 async async() {} 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 9: *goja.defineMethodKeyed(&{async false}) - compiler.go:433: 10: *goja.newMethod(&{{0xc000372910 static static() {} 0 true} 1}) + compiler.go:433: 10: *goja.newMethod(&{{0xc000464aa0 static static() {} 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -21571,7 +21607,7 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc000372b90 0 0() { + compiler.go:433: 4: *goja.newMethod(&{{0xc0003a4230 0 0() { return true; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -21595,7 +21631,7 @@ === RUN TestObjectLiteralComputedMethodKeys --- PASS: TestObjectLiteralComputedMethodKeys (0.00s) === RUN TestGeneratorFunc - compiler.go:433: 0: *goja.newFunc(&{0xc000020b90 defParam function defParam() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a52c0 defParam function defParam() { trace += "1"; return "def"; } 0 false}) @@ -21607,7 +21643,7 @@ compiler.go:433: > 5: goja._putValueP({}) compiler.go:433: > 6: goja.loadVal({def}) compiler.go:433: > 7: goja._ret({}) - compiler.go:433: 1: *goja.newGeneratorFunc(&{{0xc000020c30 g function* g(param = defParam()) { + compiler.go:433: 1: *goja.newGeneratorFunc(&{{0xc0003a5310 g function* g(param = defParam()) { const THREE = 3; trace += "2"; assert.sameValue(Math.floor(yield 1), THREE); @@ -21710,7 +21746,7 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newGeneratorMethod(&{{{0xc000020ff0 g *g(param) { + compiler.go:433: 4: *goja.newGeneratorMethod(&{{{0xc0003a55e0 g *g(param) { yield 1; yield 2; } 1 true} 1}}) @@ -21791,7 +21827,7 @@ compiler.go:433: 71: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestGeneratorMethods (0.00s) +--- PASS: TestGeneratorMethods (0.01s) === RUN TestFunctionBodyClassDecl --- PASS: TestFunctionBodyClassDecl (0.00s) === RUN TestNestedDestructArray @@ -21869,7 +21905,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNestedDestructArray (0.00s) === RUN TestThisInStash - compiler.go:433: 0: *goja.newFunc(&{0xc000021950 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a5e50 f function f() { globalThis.x = () => this; // move 'this' to stash { @@ -21887,7 +21923,7 @@ compiler.go:433: > 2: goja.loadStack(0) compiler.go:433: > 3: goja.initStashP(0) compiler.go:433: > 4: goja.loadDynamic(globalThis) - compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc0000219a0 () => this 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc0003a5ea0 () => this 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -21912,7 +21948,7 @@ compiler.go:433: > 24: goja.leaveTry({}) compiler.go:433: > 25: goja._loadUndef({}) compiler.go:433: > 26: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0000219f0 f1 function f1() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003a5ef0 f1 function f1() { globalThis.x = () => this; // move 'this' to stash var v; // introduce a stack variable @@ -21931,7 +21967,7 @@ compiler.go:433: > 2: goja.loadStack(0) compiler.go:433: > 3: goja.initStashP(0) compiler.go:433: > 4: goja.loadDynamic(globalThis) - compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc000021a40 () => this 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc000464af0 () => this 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -21970,7 +22006,7 @@ compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C C1] [] false}) compiler.go:433: 1: goja.jump(1) compiler.go:433: 2: goja.loadDynamic(Object) - compiler.go:433: 3: *goja.newDerivedClass(&{{0xc000021ef0 C class C extends Object { + compiler.go:433: 3: *goja.newDerivedClass(&{{0xc000464ff0 C class C extends Object { constructor() { super(); globalThis.x = () => this; // move 'this' to stash @@ -21992,7 +22028,7 @@ compiler.go:433: > 4: goja.superCall(0) compiler.go:433: > 5: goja._pop({}) compiler.go:433: > 6: goja.loadDynamic(globalThis) - compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc0006b2000 () => this 0 true}}) + compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc000465040 () => this 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadThisStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -22021,7 +22057,7 @@ compiler.go:433: 5: goja.initGlobalP(C) compiler.go:433: 6: goja.jump(1) compiler.go:433: 7: goja.loadDynamic(Object) - compiler.go:433: 8: *goja.newDerivedClass(&{{0xc0006b2050 C1 class C1 extends Object { + compiler.go:433: 8: *goja.newDerivedClass(&{{0xc000465090 C1 class C1 extends Object { constructor() { super(); globalThis.x = () => this; // move 'this' to stash @@ -22044,7 +22080,7 @@ compiler.go:433: > 4: goja.superCall(0) compiler.go:433: > 5: goja._pop({}) compiler.go:433: > 6: goja.loadDynamic(globalThis) - compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc0006b20a0 () => this 0 true}}) + compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc0004650e0 () => this 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadThisStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -22081,11 +22117,11 @@ compiler.go:433: 18: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 2 ---- PASS: TestThisInStashCtor (0.00s) +--- PASS: TestThisInStashCtor (0.01s) === RUN TestWrongThisRest compiler.go:433: 0: *goja.bindGlobal(&{[] [] [mine] [a] false}) compiler.go:433: 1: goja.jump(1) - compiler.go:433: 2: *goja.newClass(&{0xc0006b2500 mine class mine { + compiler.go:433: 2: *goja.newClass(&{0xc000465540 mine class mine { constructor (arg) { this.field = arg } @@ -22106,7 +22142,7 @@ compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0006b2550 f f(...argument) { + compiler.go:433: 4: *goja.newMethod(&{{0xc000465590 f f(...argument) { if (this.field != "something") { throw "wrong " + this.field + " Object.keys:" + Object.keys(this) } @@ -22138,7 +22174,7 @@ compiler.go:433: > 20: goja.call(1) compiler.go:433: > 21: goja._add({}) compiler.go:433: > 22: goja._throw({}) - compiler.go:433: > 23: *goja.newArrowFunc(&{{0xc0006b25a0 s () => { + compiler.go:433: > 23: *goja.newArrowFunc(&{{0xc000465680 s () => { for (const arg of argument) arg.call() return this.field } 0 true}}) @@ -22186,7 +22222,7 @@ === RUN TestWrongThisExtraArg compiler.go:433: 0: *goja.bindGlobal(&{[] [] [mine] [a] false}) compiler.go:433: 1: goja.jump(1) - compiler.go:433: 2: *goja.newClass(&{0xc0006b2a00 mine class mine { + compiler.go:433: 2: *goja.newClass(&{0xc000465ae0 mine class mine { constructor (arg) { this.field = arg } @@ -22204,7 +22240,7 @@ compiler.go:433: > 4: goja._loadUndef({}) compiler.go:433: > 5: goja._ret({}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0006b2a50 f f() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000465b30 f f() { if (this.field != "something") { throw "wrong " + this.field + " Object.keys:" + Object.keys(this) } @@ -22231,7 +22267,7 @@ compiler.go:433: > 18: goja._add({}) compiler.go:433: > 19: goja._throw({}) compiler.go:433: > 20: goja.loadDynamic(globalThis) - compiler.go:433: > 21: *goja.newArrowFunc(&{{0xc0006b2aa0 () => this.field 0 true}}) + compiler.go:433: > 21: *goja.newArrowFunc(&{{0xc000465b80 () => this.field 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(0) compiler.go:433: >> 2: goja.getProp(field) @@ -22258,7 +22294,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestWrongThisExtraArg (0.00s) === RUN TestWrongThisForwardRef - compiler.go:433: 0: *goja.newFunc(&{0xc0006b2d20 f function f(a = b + 1, b) { // forward ref argument to make sure args remain on stack + compiler.go:433: 0: *goja.newFunc(&{0xc000465e00 f function f(a = b + 1, b) { // forward ref argument to make sure args remain on stack if (this != expectedThis) { throw new Error("unexpected 'this'"); } @@ -22305,7 +22341,7 @@ compiler.go:433: 10: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 2 ---- PASS: TestWrongThisForwardRef (0.00s) +--- PASS: TestWrongThisForwardRef (0.01s) === RUN TestDateUTC compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) @@ -22565,7 +22601,7 @@ compiler.go:433: 84: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSetHour (0.08s) +--- PASS: TestSetHour (0.01s) === RUN TestSetMinute compiler.go:433: 0: *goja.bindGlobal(&{[d] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(d) @@ -22917,9 +22953,9 @@ compiler.go:433: 230: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDateSetters (0.00s) +--- PASS: TestDateSetters (0.01s) === RUN TestDateParse - compiler.go:433: 0: *goja.newFunc(&{0xc000336870 testParse function testParse(str, expected) { + compiler.go:433: 0: *goja.newFunc(&{0xc00050adc0 testParse function testParse(str, expected) { assert.sameValue(Date.parse(str), expected, str); } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -23243,7 +23279,7 @@ compiler.go:433: 306: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDateParse (0.00s) +--- PASS: TestDateParse (0.01s) === RUN TestDateMaxValues compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) @@ -23295,7 +23331,7 @@ compiler.go:433: 47: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDateMaxValues (0.00s) +--- PASS: TestDateMaxValues (0.01s) === RUN TestDateExport --- PASS: TestDateExport (0.00s) === RUN TestDateToJSON @@ -23304,7 +23340,7 @@ compiler.go:433: 2: goja.getProp(toJSON) compiler.go:433: 3: goja.getPropCallee(call) compiler.go:433: 4: goja._newObject({}) - compiler.go:433: 5: *goja.newFunc(&{0xc000336cd0 toISOString function () { return 1; } 0 false}) + compiler.go:433: 5: *goja.newFunc(&{0xc00050b220 toISOString function () { return 1; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({1}) compiler.go:433: > 2: goja._ret({}) @@ -23317,7 +23353,7 @@ === RUN TestDateExportType --- PASS: TestDateExportType (0.00s) === RUN TestDateParseV8 - compiler.go:433: 0: *goja.newFunc(&{0xc0003d4870 testDateParse function testDateParse(string) { + compiler.go:433: 0: *goja.newFunc(&{0xc000398640 testDateParse function testDateParse(string) { var d = Date.parse(string); assertEquals(946713600000, d, "parse: " + string); } 1 false}) @@ -23337,7 +23373,7 @@ compiler.go:433: > 13: goja._pop({}) compiler.go:433: > 14: goja._loadUndef({}) compiler.go:433: > 15: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d48c0 testDateParseLocalTime function testDateParseLocalTime(string) { + compiler.go:433: 1: *goja.newFunc(&{0xc000398690 testDateParseLocalTime function testDateParseLocalTime(string) { var d = Date.parse("parse-local-time:" + string); assertTrue(!isNaN(d), "parse-local-time: " + string + " is NaN."); assertTrue(d > 0, "parse-local-time: " + string + " <= 0."); @@ -23375,7 +23411,7 @@ compiler.go:433: > 30: goja._pop({}) compiler.go:433: > 31: goja._loadUndef({}) compiler.go:433: > 32: goja._ret({}) - compiler.go:433: 2: *goja.newFunc(&{0xc0003d4910 testDateParseMisc function testDateParseMisc(array) { + compiler.go:433: 2: *goja.newFunc(&{0xc0003986e0 testDateParseMisc function testDateParseMisc(array) { assertEquals(2, array.length, "array [" + array + "] length != 2."); var string = array[0]; var expected = array[1]; @@ -23995,7 +24031,7 @@ compiler.go:433: 578: goja._pop({}) compiler.go:433: 579: goja.loadDynamic(testCasesES5MiscNegative) compiler.go:433: 580: goja.getPropCallee(forEach) - compiler.go:433: 581: *goja.newFunc(&{0xc0003d4aa0 function (s) { + compiler.go:433: 581: *goja.newFunc(&{0xc000398820 function (s) { assertTrue(isNaN(Date.parse(s)), s + " is not NaN."); } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -24073,7 +24109,7 @@ compiler.go:433: 639: goja._initValueP({}) compiler.go:433: 640: goja.loadDynamic(testCasesNegative) compiler.go:433: 641: goja.getPropCallee(forEach) - compiler.go:433: 642: *goja.newFunc(&{0xc0003d4be0 function (s) { + compiler.go:433: 642: *goja.newFunc(&{0xc000398910 function (s) { assertTrue(isNaN(Date.parse(s)), s + " is not NaN."); } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -24095,13 +24131,13 @@ compiler.go:433: 644: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDateParseV8 (0.03s) +--- PASS: TestDateParseV8 (0.11s) === RUN TestFuncProto - compiler.go:433: 0: *goja.newFunc(&{0xc0003d45f0 A function A() {} 0 true}) + compiler.go:433: 0: *goja.newFunc(&{0xc00050a280 A function A() {} 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d4640 B function B() {} 0 true}) + compiler.go:433: 1: *goja.newFunc(&{0xc00050a2d0 B function B() {} 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -24138,7 +24174,7 @@ compiler.go:433: 32: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestFuncProto (0.00s) +--- PASS: TestFuncProto (0.01s) === RUN TestFuncPrototypeRedefine compiler.go:433: 0: *goja.bindGlobal(&{[] [] [thrown] [] false}) compiler.go:433: 1: goja.loadVal({false}) @@ -24146,13 +24182,13 @@ compiler.go:433: 3: goja.try({11 0}) compiler.go:433: 4: goja.loadDynamic(Object) compiler.go:433: 5: goja.getPropCallee(defineProperty) - compiler.go:433: 6: *goja.newFunc(&{0xc0003d4af0 function() {} 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc00050a5a0 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 7: goja.loadVal({prototype}) compiler.go:433: 8: goja._newObject({}) - compiler.go:433: 9: *goja.newFunc(&{0xc0003d4b90 set function(_value) {} 1 false}) + compiler.go:433: 9: *goja.newFunc(&{0xc00050a5f0 set function(_value) {} 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -24303,9 +24339,9 @@ func_test.go:237: In 0.2 func_test.go:200: Exited func_test.go:195: Main is finished ---- PASS: TestAsyncContextTracker (0.00s) +--- PASS: TestAsyncContextTracker (0.01s) --- PASS: TestAsyncContextTracker/#00 (0.00s) - --- PASS: TestAsyncContextTracker/#01 (0.00s) + --- PASS: TestAsyncContextTracker/#01 (0.01s) --- PASS: TestAsyncContextTracker/#02 (0.00s) === RUN TestMapHash --- PASS: TestMapHash (0.00s) @@ -24377,7 +24413,7 @@ compiler.go:433: 52: goja.loadDynamic(assert) compiler.go:433: 53: goja.getPropCallee(throws) compiler.go:433: 54: goja.loadDynamic(TypeError) - compiler.go:433: 55: *goja.newFunc(&{0xc000336730 function() { + compiler.go:433: 55: *goja.newFunc(&{0xc00050a8c0 function() { "use strict"; Object.defineProperty(o, "test1", {value: 0, writable: false, enumerable: false, configurable: true}); } 0 true}) @@ -24473,12 +24509,12 @@ compiler.go:433: 127: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDynamicObject (0.00s) +--- PASS: TestDynamicObject (0.01s) === RUN TestDynamicObjectCustomProto compiler.go:433: 0: *goja.bindGlobal(&{[proto] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(proto) compiler.go:433: 2: goja._newObject({}) - compiler.go:433: 3: *goja.newFunc(&{0xc000336960 valueOf function() { + compiler.go:433: 3: *goja.newFunc(&{0xc00050aaf0 valueOf function() { return this.num; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -24892,7 +24928,7 @@ compiler.go:433: 360: goja.loadDynamic(assert) compiler.go:433: 361: goja.getPropCallee(throws) compiler.go:433: 362: goja.loadDynamic(TypeError) - compiler.go:433: 363: *goja.newFunc(&{0xc000336dc0 function() { + compiler.go:433: 363: *goja.newFunc(&{0xc00050afa0 function() { "use strict"; delete a.length; } 0 true}) @@ -24908,7 +24944,7 @@ compiler.go:433: 367: goja.loadDynamic(assert) compiler.go:433: 368: goja.getPropCallee(throws) compiler.go:433: 369: goja.loadDynamic(TypeError) - compiler.go:433: 370: *goja.newFunc(&{0xc000336e10 function() { + compiler.go:433: 370: *goja.newFunc(&{0xc00050aff0 function() { "use strict"; a.test = true; } 0 true}) @@ -24924,7 +24960,7 @@ compiler.go:433: 374: goja.loadDynamic(assert) compiler.go:433: 375: goja.getPropCallee(throws) compiler.go:433: 376: goja.loadDynamic(TypeError) - compiler.go:433: 377: *goja.newFunc(&{0xc000336e60 function() { + compiler.go:433: 377: *goja.newFunc(&{0xc00050b040 function() { "use strict"; Object.defineProperty(a, 0, {value: 0, writable: false, enumerable: false, configurable: true}); } 0 true}) @@ -24951,11 +24987,11 @@ compiler.go:433: 380: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDynamicArray (0.00s) +--- PASS: TestDynamicArray (0.01s) === RUN TestSharedDynamicObject ---- PASS: TestSharedDynamicObject (0.01s) +--- PASS: TestSharedDynamicObject (0.03s) === RUN TestSharedDynamicArray ---- PASS: TestSharedDynamicArray (0.00s) +--- PASS: TestSharedDynamicArray (0.02s) === RUN TestGoReflectArray --- PASS: TestGoReflectArray (0.00s) === RUN TestGoReflectArraySort @@ -24964,7 +25000,7 @@ === RUN TestGoReflectArrayCopyOnChange/[]struct === RUN TestGoReflectArrayCopyOnChange/[]I === RUN TestGoReflectArrayCopyOnChange/[]interface{} ---- PASS: TestGoReflectArrayCopyOnChange (0.00s) +--- PASS: TestGoReflectArrayCopyOnChange (0.01s) --- PASS: TestGoReflectArrayCopyOnChange/[]struct (0.00s) --- PASS: TestGoReflectArrayCopyOnChange/[]I (0.00s) --- PASS: TestGoReflectArrayCopyOnChange/[]interface{} (0.00s) @@ -24994,7 +25030,7 @@ --- PASS: TestGoMapReflectWithMethods (0.00s) === RUN TestGoMapReflectWithProto compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000020730 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003a48c0 function() { 'use strict'; var proto = {}; var getterAllowed = false; @@ -25055,7 +25091,7 @@ compiler.go:433: > 11: goja.loadStack(1) compiler.go:433: > 12: goja.loadVal({t}) compiler.go:433: > 13: goja._newObject({}) - compiler.go:433: > 14: *goja.newFunc(&{0xc000020780 get function() { + compiler.go:433: > 14: *goja.newFunc(&{0xc0003a4910 get function() { if (!getterAllowed) throw new Error("getter is called"); return tHolder; } 0 true}) @@ -25070,7 +25106,7 @@ compiler.go:433: >> 8: goja.loadStash(2) compiler.go:433: >> 9: goja._ret({}) compiler.go:433: > 15: goja.putProp(get) - compiler.go:433: > 16: *goja.newFunc(&{0xc0000207d0 set function(v) { + compiler.go:433: > 16: *goja.newFunc(&{0xc0003a4960 set function(v) { if (!setterAllowed) throw new Error("setter is called"); tHolder = v; } 1 true}) @@ -25094,14 +25130,14 @@ compiler.go:433: > 22: goja.loadStack(1) compiler.go:433: > 23: goja.loadVal({t1}) compiler.go:433: > 24: goja._newObject({}) - compiler.go:433: > 25: *goja.newFunc(&{0xc000020820 get function() { + compiler.go:433: > 25: *goja.newFunc(&{0xc0003a49b0 get function() { return t1Holder; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(3) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 26: goja.putProp(get) - compiler.go:433: > 27: *goja.newFunc(&{0xc000020870 set function(v) { + compiler.go:433: > 27: *goja.newFunc(&{0xc0003a4a00 set function(v) { t1Holder = v; } 1 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 1}) @@ -25195,7 +25231,7 @@ compiler.go:433: > 111: goja.loadDynamic(assert) compiler.go:433: > 112: goja.getPropCallee(throws) compiler.go:433: > 113: goja.loadDynamic(TypeError) - compiler.go:433: > 114: *goja.newFunc(&{0xc000020910 function() { + compiler.go:433: > 114: *goja.newFunc(&{0xc0003a4aa0 function() { m.t2 = 1; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -25222,10 +25258,10 @@ compiler.go:433: 3: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestGoMapReflectWithProto (0.00s) +--- PASS: TestGoMapReflectWithProto (0.01s) === RUN TestGoMapReflectProtoProp compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d4640 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000464320 function() { "use strict"; var proto = {}; Object.defineProperty(proto, "ro", {value: 42}); @@ -25257,7 +25293,7 @@ compiler.go:433: > 18: goja.loadDynamic(assert) compiler.go:433: > 19: goja.getPropCallee(throws) compiler.go:433: > 20: goja.loadDynamic(TypeError) - compiler.go:433: > 21: *goja.newFunc(&{0xc0003d4690 function() { + compiler.go:433: > 21: *goja.newFunc(&{0xc000464370 function() { m.ro = 43; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -25335,7 +25371,7 @@ --- PASS: TestGoMapExtensibility (0.00s) === RUN TestGoMapWithProto compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003d5b30 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003991d0 function() { 'use strict'; var proto = {}; var getterAllowed = false; @@ -25396,7 +25432,7 @@ compiler.go:433: > 11: goja.loadStack(1) compiler.go:433: > 12: goja.loadVal({t}) compiler.go:433: > 13: goja._newObject({}) - compiler.go:433: > 14: *goja.newFunc(&{0xc0003d5b80 get function() { + compiler.go:433: > 14: *goja.newFunc(&{0xc000399220 get function() { if (!getterAllowed) throw new Error("getter is called"); return tHolder; } 0 true}) @@ -25411,7 +25447,7 @@ compiler.go:433: >> 8: goja.loadStash(2) compiler.go:433: >> 9: goja._ret({}) compiler.go:433: > 15: goja.putProp(get) - compiler.go:433: > 16: *goja.newFunc(&{0xc0003d5bd0 set function(v) { + compiler.go:433: > 16: *goja.newFunc(&{0xc000399270 set function(v) { if (!setterAllowed) throw new Error("setter is called"); tHolder = v; } 1 true}) @@ -25435,14 +25471,14 @@ compiler.go:433: > 22: goja.loadStack(1) compiler.go:433: > 23: goja.loadVal({t1}) compiler.go:433: > 24: goja._newObject({}) - compiler.go:433: > 25: *goja.newFunc(&{0xc0003d5c20 get function() { + compiler.go:433: > 25: *goja.newFunc(&{0xc0003992c0 get function() { return t1Holder; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStash(3) compiler.go:433: >> 2: goja._ret({}) compiler.go:433: > 26: goja.putProp(get) - compiler.go:433: > 27: *goja.newFunc(&{0xc0003d5c70 set function(v) { + compiler.go:433: > 27: *goja.newFunc(&{0xc000399310 set function(v) { t1Holder = v; } 1 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 1}) @@ -25534,7 +25570,7 @@ compiler.go:433: > 109: goja.loadDynamic(assert) compiler.go:433: > 110: goja.getPropCallee(throws) compiler.go:433: > 111: goja.loadDynamic(TypeError) - compiler.go:433: > 112: *goja.newFunc(&{0xc0003d5d10 function() { + compiler.go:433: > 112: *goja.newFunc(&{0xc0003993b0 function() { m.t2 = 1; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -25561,10 +25597,10 @@ compiler.go:433: 3: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestGoMapWithProto (0.00s) +--- PASS: TestGoMapWithProto (0.01s) === RUN TestGoMapProtoProp compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003360f0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003996d0 function() { "use strict"; var proto = {}; Object.defineProperty(proto, "ro", {value: 42}); @@ -25596,7 +25632,7 @@ compiler.go:433: > 18: goja.loadDynamic(assert) compiler.go:433: > 19: goja.getPropCallee(throws) compiler.go:433: > 20: goja.loadDynamic(TypeError) - compiler.go:433: > 21: *goja.newFunc(&{0xc000336140 function() { + compiler.go:433: > 21: *goja.newFunc(&{0xc000399720 function() { m.ro = 43; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -25632,7 +25668,7 @@ --- PASS: TestGoMapProtoProp (0.00s) === RUN TestGoMapProtoPropChain compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000336370 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000399950 function() { "use strict"; var p1 = Object.create(null); m.__proto__ = p1; @@ -25747,7 +25783,7 @@ compiler.go:433: 3: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestGoMapProtoPropChain (0.00s) +--- PASS: TestGoMapProtoPropChain (0.01s) === RUN TestGoMapUnicode --- PASS: TestGoMapUnicode (0.00s) === RUN TestGoReflectGet @@ -25866,7 +25902,7 @@ --- PASS: TestStringer (0.00s) === RUN TestGoReflectWithProto compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003734a0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc00050a320 function() { 'use strict'; var proto = { Field: "protoField", @@ -25906,7 +25942,7 @@ compiler.go:433: > 9: goja.loadStack(1) compiler.go:433: > 10: goja.loadVal({test1}) compiler.go:433: > 11: goja._newObject({}) - compiler.go:433: > 12: *goja.newFunc(&{0xc0003734f0 set function(v) { + compiler.go:433: > 12: *goja.newFunc(&{0xc00050a370 set function(v) { test1Holder = v; } 1 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 1}) @@ -25915,7 +25951,7 @@ compiler.go:433: >> 3: goja._loadUndef({}) compiler.go:433: >> 4: goja._ret({}) compiler.go:433: > 13: goja.putProp(set) - compiler.go:433: > 14: *goja.newFunc(&{0xc000373680 get function() { + compiler.go:433: > 14: *goja.newFunc(&{0xc00050a410 get function() { return test1Holder; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -25960,7 +25996,7 @@ compiler.go:433: > 51: goja.loadDynamic(assert) compiler.go:433: > 52: goja.getPropCallee(throws) compiler.go:433: > 53: goja.loadDynamic(TypeError) - compiler.go:433: > 54: *goja.newFunc(&{0xc0003736d0 function() { + compiler.go:433: > 54: *goja.newFunc(&{0xc00050a460 function() { Object.defineProperty(s, "test", {value: 43}); } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -26075,7 +26111,7 @@ === RUN TestGoReflectUnexportedEmbedStruct/foo.PublicNested.D === RUN TestGoReflectUnexportedEmbedStruct/foo.e === RUN TestGoReflectUnexportedEmbedStruct/foo.F ---- PASS: TestGoReflectUnexportedEmbedStruct (0.00s) +--- PASS: TestGoReflectUnexportedEmbedStruct (0.01s) --- PASS: TestGoReflectUnexportedEmbedStruct/foo.privateEmbed (0.00s) --- PASS: TestGoReflectUnexportedEmbedStruct/foo.A (0.00s) --- PASS: TestGoReflectUnexportedEmbedStruct/foo.PublicEmbed (0.00s) @@ -26192,7 +26228,7 @@ compiler.go:433: 72: goja.loadDynamic(proto) compiler.go:433: 73: goja.loadVal({5}) compiler.go:433: 74: goja._newObject({}) - compiler.go:433: 75: *goja.newFunc(&{0xc0003a48c0 set function(v) { + compiler.go:433: 75: *goja.newFunc(&{0xc000394550 set function(v) { v5 = v; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -26217,7 +26253,7 @@ compiler.go:433: 89: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestGoSliceReflectProto (0.00s) +--- PASS: TestGoSliceReflectProto (0.01s) === RUN TestGoSliceReflectProtoProto --- PASS: TestGoSliceReflectProtoProto (0.00s) === RUN TestGoSliceReflectDelete @@ -26360,7 +26396,7 @@ compiler.go:433: 72: goja.loadDynamic(proto) compiler.go:433: 73: goja.loadVal({5}) compiler.go:433: 74: goja._newObject({}) - compiler.go:433: 75: *goja.newFunc(&{0xc0003a4690 set function(v) { + compiler.go:433: 75: *goja.newFunc(&{0xc000395950 set function(v) { v5 = v; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -26608,7 +26644,7 @@ compiler.go:433: 5: goja._newObject({}) compiler.go:433: 6: goja.loadDynamic(b) compiler.go:433: 7: goja.putProp(b) - compiler.go:433: 8: *goja.newMethod(&{{0xc0003a59a0 get get() {return "c"} 0 false} 1}) + compiler.go:433: 8: *goja.newMethod(&{{0xc000398be0 get get() {return "c"} 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({c}) compiler.go:433: > 2: goja._ret({}) @@ -26633,7 +26669,7 @@ compiler.go:433: 27: goja._pop({}) compiler.go:433: 28: goja.resolveVar1(obj) compiler.go:433: 29: goja._newObject({}) - compiler.go:433: 30: *goja.newMethod(&{{0xc0003a59f0 with w\u0069th() { return 42; } 0 false} 1}) + compiler.go:433: 30: *goja.newMethod(&{{0xc000398c30 with w\u0069th() { return 42; } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({42}) compiler.go:433: > 2: goja._ret({}) @@ -26660,7 +26696,7 @@ compiler.go:433: 5: goja.loadVal({1}) compiler.go:433: 6: goja.putProp(b) compiler.go:433: 7: goja._newObject({}) - compiler.go:433: 8: *goja.newMethod(&{{0xc0003a5cc0 a get a() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000398f00 a get a() { Object.defineProperty(this, "b", { value: 3, enumerable: false @@ -26698,7 +26734,7 @@ compiler.go:433: 23: goja.loadVal({1}) compiler.go:433: 24: goja.putProp(b) compiler.go:433: 25: goja._newObject({}) - compiler.go:433: 26: *goja.newMethod(&{{0xc0003a5d10 a get a() { + compiler.go:433: 26: *goja.newMethod(&{{0xc000398f50 a get a() { delete this.b; } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -26800,7 +26836,7 @@ compiler.go:433: 23: goja.loadDynamic(Proxy) compiler.go:433: 24: goja.loadDynamic(target) compiler.go:433: 25: goja._newObject({}) - compiler.go:433: 26: *goja.newFunc(&{0xc0003d4eb0 getOwnPropertyDescriptor function(_target, key) { + compiler.go:433: 26: *goja.newFunc(&{0xc000399d10 getOwnPropertyDescriptor function(_target, key) { getOwnKeys.push(key); } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -26824,7 +26860,7 @@ compiler.go:433: 37: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDefinePropertiesUndefinedVal (0.00s) +--- PASS: TestDefinePropertiesUndefinedVal (0.01s) === RUN TestObjectEquality compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) @@ -26924,7 +26960,7 @@ === RUN TestRegexpLiteral compiler.go:433: 0: *goja.bindGlobal(&{[r m] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(r) - compiler.go:433: 2: *goja.newRegexp(&{0xc00031bb30 (['\"])(.*?)\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc00042b8f0 (['\"])(.*?)\1}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(m) compiler.go:433: 5: goja.loadDynamic(r) @@ -26953,7 +26989,7 @@ === RUN TestRegexpRe2Unicode compiler.go:433: 0: *goja.bindGlobal(&{[r m] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(r) - compiler.go:433: 2: *goja.newRegexp(&{0xc000361620 [65279 40 1090 1077 1089 1090 41]}) + compiler.go:433: 2: *goja.newRegexp(&{0xc00045f260 [65279 40 1090 1077 1089 1090 41]}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(m) compiler.go:433: 5: goja.loadDynamic(r) @@ -26982,7 +27018,7 @@ === RUN TestRegexpRe2UnicodeTarget compiler.go:433: 0: *goja.bindGlobal(&{[r m] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(r) - compiler.go:433: 2: *goja.newRegexp(&{0xc000399140 (['\"])(.*?)['\"]}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000472b40 (['\"])(.*?)['\"]}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(m) compiler.go:433: 5: goja.loadDynamic(r) @@ -27011,7 +27047,7 @@ === RUN TestRegexpRegexp2Unicode compiler.go:433: 0: *goja.bindGlobal(&{[r m] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(r) - compiler.go:433: 2: *goja.newRegexp(&{0xc0003aeb40 [65279 40 91 39 92 34 93 41 40 1090 1077 1089 1090 41 92 49]}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0004aa480 [65279 40 91 39 92 34 93 41 40 1090 1077 1089 1090 41 92 49]}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(m) compiler.go:433: 5: goja.loadDynamic(r) @@ -27040,7 +27076,7 @@ === RUN TestRegexpRegexp2UnicodeTarget compiler.go:433: 0: *goja.bindGlobal(&{[r m] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(r) - compiler.go:433: 2: *goja.newRegexp(&{0xc000400540 (['\"])(.*?)\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0004abe00 (['\"])(.*?)\1}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(m) compiler.go:433: 5: goja.loadDynamic(r) @@ -27069,7 +27105,7 @@ === RUN TestRegexpRe2Whitespace compiler.go:433: 0: goja.loadVal({[65279 8192 8193 8194 8203]}) compiler.go:433: 1: goja.getPropCallee(replace) - compiler.go:433: 2: *goja.newRegexp(&{0xc000401da0 \s+}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0004bf5f0 \s+}) compiler.go:433: 3: goja.loadVal({}) compiler.go:433: 4: goja.call(2) compiler.go:433: 5: goja.loadVal({[65279 8203]}) @@ -27077,11 +27113,11 @@ compiler.go:433: 7: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestRegexpRe2Whitespace (0.00s) +--- PASS: TestRegexpRe2Whitespace (0.01s) === RUN TestRegexpRegexp2Whitespace compiler.go:433: 0: goja.loadVal({[65279 65 8192 8193 8194 65 8203]}) compiler.go:433: 1: goja.getPropCallee(replace) - compiler.go:433: 2: *goja.newRegexp(&{0xc00040b890 (A)\s+\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0004c90e0 (A)\s+\1}) compiler.go:433: 3: goja.loadVal({}) compiler.go:433: 4: goja.call(2) compiler.go:433: 5: goja.loadVal({[65279 8203]}) @@ -27091,7 +27127,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpRegexp2Whitespace (0.00s) === RUN TestEmptyCharClassRe2 - compiler.go:433: 0: *goja.newRegexp(&{0xc0002dacc0 []}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0004d49f0 []}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({}) compiler.go:433: 3: goja.call(1) @@ -27100,7 +27136,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEmptyCharClassRe2 (0.00s) === RUN TestNegatedEmptyCharClassRe2 - compiler.go:433: 0: *goja.newRegexp(&{0xc0002e60c0 [^]}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0004d5d70 [^]}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({}) compiler.go:433: 3: goja.call(1) @@ -27109,7 +27145,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNegatedEmptyCharClassRe2 (0.00s) === RUN TestEmptyCharClassRegexp2 - compiler.go:433: 0: *goja.newRegexp(&{0xc0002e74a0 ([])\1}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0004e71d0 ([])\1}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({}) compiler.go:433: 3: goja.call(1) @@ -27118,7 +27154,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEmptyCharClassRegexp2 (0.00s) === RUN TestRegexp2Negate - compiler.go:433: 0: *goja.newRegexp(&{0xc0002ee930 ([\D1])\1}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0004ec660 ([\D1])\1}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({aa}) compiler.go:433: 3: goja.call(1) @@ -27127,7 +27163,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexp2Negate (0.00s) === RUN TestAlternativeRe2 - compiler.go:433: 0: *goja.newRegexp(&{0xc0002efd70 ()|}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0004edaa0 ()|}) compiler.go:433: 1: goja.getPropCallee(exec) compiler.go:433: 2: goja.loadVal({}) compiler.go:433: 3: goja.call(1) @@ -27141,7 +27177,7 @@ compiler.go:433: 0: goja.loadVal({QBZPbage y_cynprubyqre}) compiler.go:433: 1: goja.getPropCallee(replace) - compiler.go:433: 2: *goja.newRegexp(&{0xc000305290 ^\s*|\s*$}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0004fcfc0 ^\s*|\s*$}) compiler.go:433: 3: goja.loadVal({}) compiler.go:433: 4: goja.call(2) compiler.go:433: 5: goja._saveResult({}) @@ -27151,7 +27187,7 @@ === RUN TestRegexpNumCaptures compiler.go:433: 0: goja.loadVal({Fubpxjnir Synfu 9.0 e115}) compiler.go:433: 1: goja.getPropCallee(replace) - compiler.go:433: 2: *goja.newRegexp(&{0xc000316b70 ([a-zA-Z]|\s)+}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0005328a0 ([a-zA-Z]|\s)+}) compiler.go:433: 3: goja.loadVal({}) compiler.go:433: 4: goja.call(2) compiler.go:433: 5: goja._saveResult({}) @@ -27161,7 +27197,7 @@ === RUN TestRegexpNumCaptures1 compiler.go:433: 0: goja.loadVal({Fubpxjnir Sy fu 9.0 e115}) compiler.go:433: 1: goja.getPropCallee(replace) - compiler.go:433: 2: *goja.newRegexp(&{0xc000326450 ^.*\s+(\S+\s+\S+$)}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000550180 ^.*\s+(\S+\s+\S+$)}) compiler.go:433: 3: goja.loadVal({}) compiler.go:433: 4: goja.call(2) compiler.go:433: 5: goja._saveResult({}) @@ -27169,7 +27205,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpNumCaptures1 (0.00s) === RUN TestRegexpSInClass - compiler.go:433: 0: *goja.newRegexp(&{0xc000327cb0 [\S]}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0005981b0 [\S]}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({[65279 8232]}) compiler.go:433: 3: goja.call(1) @@ -27178,7 +27214,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpSInClass (0.00s) === RUN TestRegexpDotMatchCR - compiler.go:433: 0: *goja.newRegexp(&{0xc00033f0b0 .}) + compiler.go:433: 0: *goja.newRegexp(&{0xc000599530 .}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({ }) compiler.go:433: 3: goja.call(1) @@ -27187,7 +27223,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpDotMatchCR (0.00s) === RUN TestRegexpDotMatchCRInGroup - compiler.go:433: 0: *goja.newRegexp(&{0xc0003624b0 (.)}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0005de930 (.)}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({ }) compiler.go:433: 3: goja.call(1) @@ -27196,7 +27232,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpDotMatchCRInGroup (0.00s) === RUN TestRegexpDotMatchLF - compiler.go:433: 0: *goja.newRegexp(&{0xc000363830 .}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0005dfcb0 .}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({ }) @@ -27208,7 +27244,7 @@ === RUN TestRegexpSplitWithBackRef compiler.go:433: 0: goja.loadVal({a++b+-c}) compiler.go:433: 1: goja.getPropCallee(split) - compiler.go:433: 2: *goja.newRegexp(&{0xc000370d50 ([+-])\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0005f51d0 ([+-])\1}) compiler.go:433: 3: goja.call(1) compiler.go:433: 4: goja.getPropCallee(join) compiler.go:433: 5: goja.loadVal({ $$ }) @@ -27218,7 +27254,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpSplitWithBackRef (0.00s) === RUN TestEscapeNonASCII - compiler.go:433: 0: *goja.newRegexp(&{0xc000382810 [65279 92 10835]}) + compiler.go:433: 0: *goja.newRegexp(&{0xc000600c90 [65279 92 10835]}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({[65279 10835]}) compiler.go:433: 3: goja.call(1) @@ -27232,7 +27268,7 @@ compiler.go:433: 2: goja.loadVal({[65279 55296 56320]}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.loadDynamicCallee(assert) - compiler.go:433: 5: *goja.newRegexp(&{0xc0003912c0 \uD800}) + compiler.go:433: 5: *goja.newRegexp(&{0xc000390480 \uD800}) compiler.go:433: 6: goja.getPropCallee(test) compiler.go:433: 7: goja.loadDynamic(str) compiler.go:433: 8: goja.call(1) @@ -27240,7 +27276,7 @@ compiler.go:433: 10: goja.call(2) compiler.go:433: 11: goja._pop({}) compiler.go:433: 12: goja.loadDynamicCallee(assert) - compiler.go:433: 13: *goja.newRegexp(&{0xc000391380 \uD800}) + compiler.go:433: 13: *goja.newRegexp(&{0xc000390540 \uD800}) compiler.go:433: 14: goja.getPropCallee(test) compiler.go:433: 15: goja.loadDynamic(str) compiler.go:433: 16: goja.call(1) @@ -27248,7 +27284,7 @@ compiler.go:433: 18: goja.call(2) compiler.go:433: 19: goja._pop({}) compiler.go:433: 20: goja.loadDynamicCallee(assert) - compiler.go:433: 21: *goja.newRegexp(&{0xc000391440 [65279 55296 56320]}) + compiler.go:433: 21: *goja.newRegexp(&{0xc000390600 [65279 55296 56320]}) compiler.go:433: 22: goja.getPropCallee(test) compiler.go:433: 23: goja.loadDynamic(str) compiler.go:433: 24: goja.call(1) @@ -27256,7 +27292,7 @@ compiler.go:433: 26: goja.call(2) compiler.go:433: 27: goja._pop({}) compiler.go:433: 28: goja.resolveVar1(re) - compiler.go:433: 29: *goja.newRegexp(&{0xc0003914d0 \uD800}) + compiler.go:433: 29: *goja.newRegexp(&{0xc000390690 \uD800}) compiler.go:433: 30: goja._initValueP({}) compiler.go:433: 31: goja.loadDynamicCallee(assert) compiler.go:433: 32: goja.loadDynamicCallee(compareArray) @@ -27293,7 +27329,7 @@ compiler.go:433: 63: goja.loadDynamicCallee(compareArray) compiler.go:433: 64: goja.loadVal({[65279 97 55296 56320 98]}) compiler.go:433: 65: goja.getPropCallee(split) - compiler.go:433: 66: *goja.newRegexp(&{0xc0003915f0 \uD800}) + compiler.go:433: 66: *goja.newRegexp(&{0xc0003907b0 \uD800}) compiler.go:433: 67: goja.call(1) compiler.go:433: 68: goja.newArray(2) compiler.go:433: 69: goja.loadVal({a}) @@ -27308,7 +27344,7 @@ compiler.go:433: 78: goja.loadDynamicCallee(compareArray) compiler.go:433: 79: goja.loadVal({[65279 97 55296 56320 98]}) compiler.go:433: 80: goja.getPropCallee(split) - compiler.go:433: 81: *goja.newRegexp(&{0xc0003916b0 (?:)}) + compiler.go:433: 81: *goja.newRegexp(&{0xc000390870 (?:)}) compiler.go:433: 82: goja.call(1) compiler.go:433: 83: goja.newArray(4) compiler.go:433: 84: goja.loadVal({a}) @@ -27327,7 +27363,7 @@ compiler.go:433: 97: goja.loadDynamicCallee(compareArray) compiler.go:433: 98: goja.loadVal({[65279 48 128]}) compiler.go:433: 99: goja.getPropCallee(split) - compiler.go:433: 100: *goja.newRegexp(&{0xc000391770 (0){0}}) + compiler.go:433: 100: *goja.newRegexp(&{0xc0003909c0 (0){0}}) compiler.go:433: 101: goja.call(1) compiler.go:433: 102: goja.newArray(3) compiler.go:433: 103: goja.loadVal({0}) @@ -27341,7 +27377,7 @@ compiler.go:433: 111: goja.call(2) compiler.go:433: 112: goja._pop({}) compiler.go:433: 113: goja.resolveVar1(re) - compiler.go:433: 114: *goja.newRegexp(&{0xc000391830 (?=)a}) + compiler.go:433: 114: *goja.newRegexp(&{0xc000390a80 (?=)a}) compiler.go:433: 115: goja._putValueP({}) compiler.go:433: 116: goja.loadDynamic(assert) compiler.go:433: 117: goja.getPropCallee(sameValue) @@ -27356,7 +27392,7 @@ compiler.go:433: 126: goja._pop({}) compiler.go:433: 127: goja.loadDynamic(assert) compiler.go:433: 128: goja.getPropCallee(sameValue) - compiler.go:433: 129: *goja.newRegexp(&{0xc000391a40 .}) + compiler.go:433: 129: *goja.newRegexp(&{0xc000390c90 .}) compiler.go:433: 130: goja.getPropCallee(exec) compiler.go:433: 131: goja.loadVal({[65279 55357 56834]}) compiler.go:433: 132: goja.call(1) @@ -27420,11 +27456,11 @@ compiler.go:433: 190: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestRegexpUTF16 (0.00s) +--- PASS: TestRegexpUTF16 (0.01s) === RUN TestRegexpUnicode compiler.go:433: 0: *goja.bindGlobal(&{[re] [] [] [] false}) compiler.go:433: 1: goja.loadDynamicCallee(assert) - compiler.go:433: 2: *goja.newRegexp(&{0xc000294cc0 \uD800}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000172d20 \uD800}) compiler.go:433: 3: goja.getPropCallee(test) compiler.go:433: 4: goja.loadVal({[65279 55296 56320]}) compiler.go:433: 5: goja.call(1) @@ -27433,7 +27469,7 @@ compiler.go:433: 8: goja.call(2) compiler.go:433: 9: goja._pop({}) compiler.go:433: 10: goja.loadDynamicCallee(assert) - compiler.go:433: 11: *goja.newRegexp(&{0xc000294de0 \uFFFD}) + compiler.go:433: 11: *goja.newRegexp(&{0xc000172e40 \uFFFD}) compiler.go:433: 12: goja.getPropCallee(test) compiler.go:433: 13: goja.loadVal({[65279 55296 56320]}) compiler.go:433: 14: goja.call(1) @@ -27442,7 +27478,7 @@ compiler.go:433: 17: goja.call(2) compiler.go:433: 18: goja._pop({}) compiler.go:433: 19: goja.loadDynamicCallee(assert) - compiler.go:433: 20: *goja.newRegexp(&{0xc000294ea0 \uD800\uDC00}) + compiler.go:433: 20: *goja.newRegexp(&{0xc000172f00 \uD800\uDC00}) compiler.go:433: 21: goja.getPropCallee(test) compiler.go:433: 22: goja.loadVal({[65279 55296 56320]}) compiler.go:433: 23: goja.call(1) @@ -27450,7 +27486,7 @@ compiler.go:433: 25: goja.call(2) compiler.go:433: 26: goja._pop({}) compiler.go:433: 27: goja.loadDynamicCallee(assert) - compiler.go:433: 28: *goja.newRegexp(&{0xc000294f60 \uD800}) + compiler.go:433: 28: *goja.newRegexp(&{0xc000172fc0 \uD800}) compiler.go:433: 29: goja.getPropCallee(test) compiler.go:433: 30: goja.loadVal({[65279 55296]}) compiler.go:433: 31: goja.call(1) @@ -27461,7 +27497,7 @@ compiler.go:433: 36: goja.loadDynamicCallee(compareArray) compiler.go:433: 37: goja.loadVal({[65279 97 55296 56320 98]}) compiler.go:433: 38: goja.getPropCallee(split) - compiler.go:433: 39: *goja.newRegexp(&{0xc000295020 \uD800}) + compiler.go:433: 39: *goja.newRegexp(&{0xc000173080 \uD800}) compiler.go:433: 40: goja.call(1) compiler.go:433: 41: goja.newArray(1) compiler.go:433: 42: goja.loadVal({[65279 97 55296 56320 98]}) @@ -27474,7 +27510,7 @@ compiler.go:433: 49: goja.loadDynamicCallee(compareArray) compiler.go:433: 50: goja.loadVal({[65279 97 55296 56320 98]}) compiler.go:433: 51: goja.getPropCallee(split) - compiler.go:433: 52: *goja.newRegexp(&{0xc0002950e0 (?:)}) + compiler.go:433: 52: *goja.newRegexp(&{0xc000173140 (?:)}) compiler.go:433: 53: goja.call(1) compiler.go:433: 54: goja.newArray(3) compiler.go:433: 55: goja.loadVal({a}) @@ -27491,7 +27527,7 @@ compiler.go:433: 66: goja.loadDynamicCallee(compareArray) compiler.go:433: 67: goja.loadVal({[65279 48 128]}) compiler.go:433: 68: goja.getPropCallee(split) - compiler.go:433: 69: *goja.newRegexp(&{0xc0002951a0 (0){0}}) + compiler.go:433: 69: *goja.newRegexp(&{0xc000173200 (0){0}}) compiler.go:433: 70: goja.call(1) compiler.go:433: 71: goja.newArray(3) compiler.go:433: 72: goja.loadVal({0}) @@ -27507,7 +27543,7 @@ compiler.go:433: 82: goja.resolveVar1(re) compiler.go:433: 83: goja.loadDynamicCallee(eval) compiler.go:433: 84: goja.loadVal({/}) - compiler.go:433: 85: *goja.newRegexp(&{0xc000295260 \ud834\udf06}) + compiler.go:433: 85: *goja.newRegexp(&{0xc0001732f0 \ud834\udf06}) compiler.go:433: 86: goja.getProp(source) compiler.go:433: 87: goja._add({}) compiler.go:433: 88: goja.loadVal({/u}) @@ -27536,7 +27572,7 @@ compiler.go:433: 1: goja.resolveVar1(res) compiler.go:433: 2: goja.loadVal({aaa}) compiler.go:433: 3: goja.getPropCallee(match) - compiler.go:433: 4: *goja.newRegexp(&{0xc00029f950 ^a}) + compiler.go:433: 4: *goja.newRegexp(&{0xc000326420 ^a}) compiler.go:433: 5: goja.call(1) compiler.go:433: 6: goja._initValueP({}) compiler.go:433: 7: goja.loadDynamic(res) @@ -27562,7 +27598,7 @@ compiler.go:433: 5: goja._initValueP({}) compiler.go:433: 6: goja.loadDynamic(RegExp) compiler.go:433: 7: goja.getProp(prototype) - compiler.go:433: 8: *goja.newFunc(&{0xc000021ae0 function(s) { + compiler.go:433: 8: *goja.newFunc(&{0xc000465360 function(s) { return origExec.call(this, s); } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -27575,7 +27611,7 @@ compiler.go:433: > 7: goja._ret({}) compiler.go:433: 9: goja.setPropP(exec) compiler.go:433: 10: goja.resolveVar1(re) - compiler.go:433: 11: *goja.newRegexp(&{0xc0006e0090 (?:)}) + compiler.go:433: 11: *goja.newRegexp(&{0xc00027fd10 (?:)}) compiler.go:433: 12: goja._initValueP({}) compiler.go:433: 13: goja.resolveVar1(str) compiler.go:433: 14: goja.loadVal({[65279 97 55296 56320 98]}) @@ -27770,7 +27806,7 @@ compiler.go:433: 203: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestRegexpUnicodeAdvanceStringIndex (0.00s) +--- PASS: TestRegexpUnicodeAdvanceStringIndex (0.01s) === RUN TestRegexpInit compiler.go:433: 0: goja.loadDynamicCallee(RegExp) compiler.go:433: 1: goja.loadVal({.}) @@ -27796,14 +27832,14 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpToString (0.00s) === RUN TestRegexpEscapeSource - compiler.go:433: 0: *goja.newRegexp(&{0xc000329e60 href="(.+?)(\/.*\/\S+?)\/"}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0001fe960 href="(.+?)(\/.*\/\S+?)\/"}) compiler.go:433: 1: goja.getProp(source) compiler.go:433: 2: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpEscapeSource (0.00s) === RUN TestRegexpConsecutiveMatchCache ---- PASS: TestRegexpConsecutiveMatchCache (0.00s) +--- PASS: TestRegexpConsecutiveMatchCache (0.01s) === RUN TestRegexpMatchAll --- PASS: TestRegexpMatchAll (0.00s) === RUN TestRegexpOverrideSpecies @@ -27815,7 +27851,7 @@ compiler.go:433: 5: goja._newObject({}) compiler.go:433: 6: goja.loadVal({true}) compiler.go:433: 7: goja.putProp(configurable) - compiler.go:433: 8: *goja.newFunc(&{0xc0003d5180 value function() { + compiler.go:433: 8: *goja.newFunc(&{0xc00050bb30 value function() { throw "passed"; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -27830,7 +27866,7 @@ compiler.go:433: 13: goja._clearResult({}) compiler.go:433: 14: goja.loadVal({ab}) compiler.go:433: 15: goja.getPropCallee(split) - compiler.go:433: 16: *goja.newRegexp(&{0xc00031b500 a}) + compiler.go:433: 16: *goja.newRegexp(&{0xc00030e7b0 a}) compiler.go:433: 17: goja.call(1) compiler.go:433: 18: goja._pop({}) compiler.go:433: 19: goja.loadDynamic(Error) @@ -27865,7 +27901,7 @@ compiler.go:433: 8: goja.loadDynamic(Symbol) compiler.go:433: 9: goja.getProp(match) compiler.go:433: 10: goja._newObject({}) - compiler.go:433: 11: *goja.newFunc(&{0xc0003d5450 get function() { + compiler.go:433: 11: *goja.newFunc(&{0xc00050bef0 get function() { throw "passed"; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -27914,7 +27950,7 @@ compiler.go:433: 2: goja.loadVal({0}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.resolveVar1(regexp) - compiler.go:433: 5: *goja.newRegexp(&{0xc0003af620 \d}) + compiler.go:433: 5: *goja.newRegexp(&{0xc000349e60 \d}) compiler.go:433: 6: goja._initValueP({}) compiler.go:433: 7: goja.resolveVar1(obj) compiler.go:433: 8: goja._newObject({}) @@ -27925,7 +27961,7 @@ compiler.go:433: 13: goja.loadDynamic(Symbol) compiler.go:433: 14: goja.getProp(species) compiler.go:433: 15: goja._newObject({}) - compiler.go:433: 16: *goja.newFunc(&{0xc0003d58b0 value function() { + compiler.go:433: 16: *goja.newFunc(&{0xc0003942d0 value function() { callCount++; callArgs = arguments; return /\w/g; @@ -27940,7 +27976,7 @@ compiler.go:433: > 7: goja.resolveVar1(callArgs) compiler.go:433: > 8: goja.loadStack1(1) compiler.go:433: > 9: goja._putValueP({}) - compiler.go:433: > 10: *goja.newRegexp(&{0xc0003af830 \w}) + compiler.go:433: > 10: *goja.newRegexp(&{0xc00035a0f0 \w}) compiler.go:433: > 11: goja._ret({}) compiler.go:433: 17: goja.putProp(value) compiler.go:433: 18: goja.call(3) @@ -28031,9 +28067,9 @@ compiler.go:433: 103: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestRegexpMatchAllConstructor (0.00s) +--- PASS: TestRegexpMatchAllConstructor (0.01s) === RUN TestRegexp2InvalidEscape - compiler.go:433: 0: *goja.newRegexp(&{0xc00040a990 (?=)\x0}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0003bf0e0 (?=)\x0}) compiler.go:433: 1: goja.getPropCallee(test) compiler.go:433: 2: goja.loadVal({x0}) compiler.go:433: 3: goja.call(1) @@ -28042,7 +28078,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexp2InvalidEscape (0.00s) === RUN TestRegexpUnicodeEmptyMatch - compiler.go:433: 0: *goja.newRegexp(&{0xc00040bec0 (0)0|}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0003d25d0 (0)0|}) compiler.go:433: 1: goja.getPropCallee(exec) compiler.go:433: 2: goja.loadVal({[65279 48 239]}) compiler.go:433: 3: goja.call(1) @@ -28060,14 +28096,14 @@ compiler.go:433: 3: goja.loadVal({(?)}) compiler.go:433: 4: goja._pushArrayItem({}) compiler.go:433: 5: goja.getPropCallee(forEach) - compiler.go:433: 6: *goja.newFunc(&{0xc0003a4050 function(s) { + compiler.go:433: 6: *goja.newFunc(&{0xc0003949b0 function(s) { assert.throws(SyntaxError, function() {new RegExp(s)}, s); } 1 false}) compiler.go:433: > 0: *goja.enterFunc(&{map[] 1 0 1 1 true false}) compiler.go:433: > 1: goja.loadDynamic(assert) compiler.go:433: > 2: goja.getPropCallee(throws) compiler.go:433: > 3: goja.loadDynamic(SyntaxError) - compiler.go:433: > 4: *goja.newFunc(&{0xc0003a40a0 function() {new RegExp(s)} 0 false}) + compiler.go:433: > 4: *goja.newFunc(&{0xc000394a50 function() {new RegExp(s)} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadDynamic(RegExp) compiler.go:433: >> 2: goja.loadStashLex(0) @@ -28088,7 +28124,7 @@ === RUN TestRegexpLookbehindAssertion compiler.go:433: 0: *goja.bindGlobal(&{[re] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(re) - compiler.go:433: 2: *goja.newRegexp(&{0xc0002d74d0 (?<=Jack|Tom)Sprat}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0004c6600 (?<=Jack|Tom)Sprat}) compiler.go:433: 3: goja._initValueP({}) compiler.go:433: 4: goja.loadDynamicCallee(assert) compiler.go:433: 5: goja.loadDynamic(re) @@ -28108,7 +28144,7 @@ compiler.go:433: 19: goja.call(2) compiler.go:433: 20: goja._pop({}) compiler.go:433: 21: goja.resolveVar1(re) - compiler.go:433: 22: *goja.newRegexp(&{0xc0002d76b0 (? { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc000394000 () => { new RegExp("(?<=a)\\u{6_5}", "u"); } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -28208,7 +28244,7 @@ compiler.go:433: 22: goja.loadDynamic(assert) compiler.go:433: 23: goja.getPropCallee(throws) compiler.go:433: 24: goja.loadDynamic(SyntaxError) - compiler.go:433: 25: *goja.newArrowFunc(&{{0xc0003a4b40 () => { + compiler.go:433: 25: *goja.newArrowFunc(&{{0xc000394050 () => { new RegExp("a\\u{6_5}", "u"); } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -28223,13 +28259,13 @@ compiler.go:433: 27: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestRegexpNumSeparators (0.00s) +--- PASS: TestRegexpNumSeparators (0.01s) === RUN TestRegexpUnicodeEscape compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) compiler.go:433: 2: goja.loadVal({u{0_2}}) compiler.go:433: 3: goja.getPropCallee(match) - compiler.go:433: 4: *goja.newRegexp(&{0xc0003cb710 \u{0_2}}) + compiler.go:433: 4: *goja.newRegexp(&{0xc00032ec30 \u{0_2}}) compiler.go:433: 5: goja.call(1) compiler.go:433: 6: goja.loadVal({0}) compiler.go:433: 7: goja._getElem({}) @@ -28240,7 +28276,7 @@ compiler.go:433: 12: goja.getPropCallee(sameValue) compiler.go:433: 13: goja.loadVal({uu}) compiler.go:433: 14: goja.getPropCallee(match) - compiler.go:433: 15: *goja.newRegexp(&{0xc0003cb830 \u{2}}) + compiler.go:433: 15: *goja.newRegexp(&{0xc00032ed50 \u{2}}) compiler.go:433: 16: goja.call(1) compiler.go:433: 17: goja.loadVal({0}) compiler.go:433: 18: goja._getElem({}) @@ -28251,7 +28287,7 @@ compiler.go:433: 23: goja.getPropCallee(sameValue) compiler.go:433: 24: goja.loadVal({uu}) compiler.go:433: 25: goja.getPropCallee(match) - compiler.go:433: 26: *goja.newRegexp(&{0xc0003cb950 \u{2}}) + compiler.go:433: 26: *goja.newRegexp(&{0xc00032ee70 \u{2}}) compiler.go:433: 27: goja.call(1) compiler.go:433: 28: goja.loadVal({0}) compiler.go:433: 29: goja._getElem({}) @@ -28370,7 +28406,7 @@ compiler.go:433: 29: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestConstStringIter (0.00s) +--- PASS: TestConstStringIter (0.01s) === RUN TestUnicodeConcat compiler.go:433: 0: *goja.bindGlobal(&{[s s1 s2] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(s) @@ -28645,7 +28681,7 @@ compiler.go:433: 147: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestNumberFormatRounding (0.00s) +--- PASS: TestNumberFormatRounding (0.01s) === RUN TestBinOctalNumbers compiler.go:433: 0: goja.loadVal({7}) compiler.go:433: 1: goja._saveResult({}) @@ -28671,7 +28707,7 @@ === RUN TestSetFuncVariadicFuncArg --- PASS: TestSetFuncVariadicFuncArg (0.00s) === RUN TestArgsKeys - compiler.go:433: 0: *goja.newFunc(&{0xc000337900 testArgs2 function testArgs2(x, y, z) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4be0 testArgs2 function testArgs2(x, y, z) { // Properties of the arguments object are enumerable. return Object.keys(arguments); } 3 false}) @@ -28791,7 +28827,7 @@ compiler.go:433: 94: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestIPowOverflow (0.00s) +--- PASS: TestIPowOverflow (0.01s) === RUN TestIPow --- PASS: TestIPow (0.00s) === RUN TestInterrupt @@ -28979,7 +29015,7 @@ compiler.go:433: 19: goja.jump(-12) compiler.go:433: 20: goja.loadDynamic(a) compiler.go:433: 21: goja.getPropCallee(sort) - compiler.go:433: 22: *goja.newFunc(&{0xc0003a5360 function(x, y) { return y - x } 2 false}) + compiler.go:433: 22: *goja.newFunc(&{0xc000021db0 function(x, y) { return y - x } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) compiler.go:433: > 1: goja.loadStackLex(-2) compiler.go:433: > 2: goja.loadStackLex(-1) @@ -29026,7 +29062,7 @@ compiler.go:433: 61: goja.jump(-32) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSortComparatorReturnValues (0.00s) +--- PASS: TestSortComparatorReturnValues (0.01s) === RUN TestSortComparatorReturnValueFloats compiler.go:433: 0: *goja.bindGlobal(&{[a i] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(a) @@ -29044,7 +29080,7 @@ compiler.go:433: 13: goja._initValueP({}) compiler.go:433: 14: goja.loadDynamic(a) compiler.go:433: 15: goja.getPropCallee(sort) - compiler.go:433: 16: *goja.newFunc(&{0xc0003a5630 function(a, b) { return a - b; } 2 false}) + compiler.go:433: 16: *goja.newFunc(&{0xc0003a42d0 function(a, b) { return a - b; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) compiler.go:433: > 1: goja.loadStackLex(-1) compiler.go:433: > 2: goja.loadStackLex(-2) @@ -29100,7 +29136,7 @@ compiler.go:433: 7: goja._initValueP({}) compiler.go:433: 8: goja.loadDynamic(a) compiler.go:433: 9: goja.getPropCallee(sort) - compiler.go:433: 10: *goja.newFunc(&{0xc0003a5950 function(a, b) { return a > b ? 0 : -0; } 2 false}) + compiler.go:433: 10: *goja.newFunc(&{0xc0003a4780 function(a, b) { return a > b ? 0 : -0; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) compiler.go:433: > 1: goja.loadStackLex(-1) compiler.go:433: > 2: goja.loadStackLex(-2) @@ -29151,7 +29187,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestSortComparatorReturnValueNegZero (0.00s) === RUN TestNilApplyArg - compiler.go:433: 0: *goja.newFunc(&{0xc0003a5b80 x function x(a, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a49b0 x function x(a, b) { return a === undefined && b === 1; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 2}) @@ -29211,7 +29247,7 @@ runtime_test.go:1892: abort this at :3:23(3) --- PASS: TestInterruptWithPromises (0.00s) === RUN TestRunLoopPreempt ---- PASS: TestRunLoopPreempt (0.10s) +--- PASS: TestRunLoopPreempt (0.11s) === RUN TestNaN --- PASS: TestNaN (0.00s) === RUN TestInf @@ -29219,7 +29255,7 @@ === RUN TestRuntimeNew --- PASS: TestRuntimeNew (0.00s) === RUN TestAutoBoxing - compiler.go:433: 0: *goja.newFunc(&{0xc0003d45f0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398280 f function f() { 'use strict'; var a = 1; var thrown1 = false; @@ -29376,7 +29412,7 @@ compiler.go:433: 8: goja._initValueP({}) compiler.go:433: 9: goja.resolveVar1(wrapper) compiler.go:433: 10: goja._newObject({}) - compiler.go:433: 11: *goja.newFunc(&{0xc0003d4f00 toString function() { + compiler.go:433: 11: *goja.newFunc(&{0xc000398aa0 toString function() { callCount += 1; return sym; } 0 false}) @@ -29389,7 +29425,7 @@ compiler.go:433: > 6: goja.loadDynamic(sym) compiler.go:433: > 7: goja._ret({}) compiler.go:433: 12: goja.putProp(toString) - compiler.go:433: 13: *goja.newFunc(&{0xc0003d4f50 valueOf function() { + compiler.go:433: 13: *goja.newFunc(&{0xc000398af0 valueOf function() { $ERROR("valueOf() called"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -29406,7 +29442,7 @@ compiler.go:433: 18: goja._initValueP({}) compiler.go:433: 19: goja.loadDynamic(o) compiler.go:433: 20: goja.loadDynamic(wrapper) - compiler.go:433: 21: *goja.newFunc(&{0xc0003d5040 function() { return "test" } 0 false}) + compiler.go:433: 21: *goja.newFunc(&{0xc000398b40 function() { return "test" } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja.loadVal({test}) compiler.go:433: > 2: goja._ret({}) @@ -29448,7 +29484,7 @@ compiler.go:433: 57: goja.loadDynamic(wrapper1) compiler.go:433: 58: goja.loadDynamic(Symbol) compiler.go:433: 59: goja.getProp(toPrimitive) - compiler.go:433: 60: *goja.newFunc(&{0xc0003d5090 function(hint) { + compiler.go:433: 60: *goja.newFunc(&{0xc000398b90 function(hint) { if (hint === "string" || hint === "default") { return "1"; } @@ -29512,9 +29548,9 @@ compiler.go:433: 88: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestToPropertyKey (0.00s) +--- PASS: TestToPropertyKey (0.01s) === RUN TestPrimThisValue - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5400 t function t() { + compiler.go:433: 0: *goja.newFunc(&{0xc000398ff0 t function t() { 'use strict'; Boolean.prototype.toString = function() { @@ -29533,7 +29569,7 @@ compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) compiler.go:433: > 1: goja.loadDynamic(Boolean) compiler.go:433: > 2: goja.getProp(prototype) - compiler.go:433: > 3: *goja.newFunc(&{0xc0003d5450 function() { + compiler.go:433: > 3: *goja.newFunc(&{0xc000399040 function() { return typeof this; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -29553,7 +29589,7 @@ compiler.go:433: > 14: goja.getProp(prototype) compiler.go:433: > 15: goja.loadDynamic(Symbol) compiler.go:433: > 16: goja.getProp(iterator) - compiler.go:433: > 17: *goja.newFunc(&{0xc0003d54a0 function() { + compiler.go:433: > 17: *goja.newFunc(&{0xc000399090 function() { return [typeof this][Symbol.iterator](); } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -29599,7 +29635,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestPrimThisValue (0.00s) === RUN TestPrimThisValueGetter - compiler.go:433: 0: *goja.newFunc(&{0xc0003d5950 t function t() { + compiler.go:433: 0: *goja.newFunc(&{0xc000399400 t function t() { 'use strict'; Object.defineProperty(Boolean.prototype, "toString", { get: function() { @@ -29619,7 +29655,7 @@ compiler.go:433: > 4: goja.getProp(prototype) compiler.go:433: > 5: goja.loadVal({toString}) compiler.go:433: > 6: goja._newObject({}) - compiler.go:433: > 7: *goja.newFunc(&{0xc0003d59a0 get function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc000399450 get function() { var v = typeof this; return function() { return v; @@ -29629,7 +29665,7 @@ compiler.go:433: >> 1: goja.loadStack(0) compiler.go:433: >> 2: goja._typeof({}) compiler.go:433: >> 3: goja.initStashP(0) - compiler.go:433: >> 4: *goja.newFunc(&{0xc0003d59f0 function() { + compiler.go:433: >> 4: *goja.newFunc(&{0xc0003994a0 function() { return v; } 0 true}) compiler.go:433: >>> 0: *goja.enterFuncStashless(&{0 0}) @@ -29766,7 +29802,7 @@ === RUN TestDateConversion --- PASS: TestDateConversion (0.00s) === RUN TestNativeCtorNewTarget - compiler.go:433: 0: *goja.newFunc(&{0xc000336f50 NewTarget function NewTarget() { + compiler.go:433: 0: *goja.newFunc(&{0xc000394b40 NewTarget function NewTarget() { } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) @@ -29919,7 +29955,7 @@ compiler.go:433: 112: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestNestedEnumerate (0.00s) +--- PASS: TestNestedEnumerate (0.01s) === RUN TestAbandonedEnumerate compiler.go:433: 0: *goja.bindGlobal(&{[o res i j] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(o) @@ -29984,7 +30020,7 @@ compiler.go:433: 6: goja._initValueP({}) compiler.go:433: 7: goja.resolveVar1(iterator) compiler.go:433: 8: goja._newObject({}) - compiler.go:433: 9: *goja.newFunc(&{0xc0003a4050 next function() { + compiler.go:433: 9: *goja.newFunc(&{0xc000395a90 next function() { return { value: true }; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -29993,7 +30029,7 @@ compiler.go:433: > 3: goja.putProp(value) compiler.go:433: > 4: goja._ret({}) compiler.go:433: 10: goja.putProp(next) - compiler.go:433: 11: *goja.newFunc(&{0xc0003a40f0 return function() { + compiler.go:433: 11: *goja.newFunc(&{0xc000395b30 return function() { returnCount += 1; throw new Error(); } 0 false}) @@ -30013,7 +30049,7 @@ compiler.go:433: 14: goja.loadDynamic(iterable) compiler.go:433: 15: goja.loadDynamic(Symbol) compiler.go:433: 16: goja.getProp(iterator) - compiler.go:433: 17: *goja.newFunc(&{0xc0003a4140 function() { + compiler.go:433: 17: *goja.newFunc(&{0xc000395b80 function() { return iterator; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -30102,7 +30138,7 @@ === RUN TestStacktraceLocationThrowFromCatch --- PASS: TestStacktraceLocationThrowFromCatch (0.00s) === RUN TestErrorStackRethrow - compiler.go:433: 0: *goja.newFunc(&{0xc0003a5180 f function f(e) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003a4aa0 f function f(e) { throw e; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -30208,54 +30244,54 @@ compiler.go:433: 10: goja.call(0) compiler.go:433: 11: goja.initGlobalP(anonSym) compiler.go:433: 12: goja._newObject({}) - compiler.go:433: 13: *goja.newMethod(&{{0xc0003724b0 id get id() {} 0 false} 1}) + compiler.go:433: 13: *goja.newMethod(&{{0xc0003a5db0 id get id() {} 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 14: *goja.defineGetterKeyed(&{id true}) compiler.go:433: 15: goja.loadDynamic(anonSym) compiler.go:433: 16: goja._toPropertyKey({}) - compiler.go:433: 17: *goja.newMethod(&{{0xc000372500 get [anonSym]() {} 0 false} 2}) + compiler.go:433: 17: *goja.newMethod(&{{0xc0003a5e00 get [anonSym]() {} 0 false} 2}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 18: *goja.defineGetter(&{true}) compiler.go:433: 19: goja.loadDynamic(namedSym) compiler.go:433: 20: goja._toPropertyKey({}) - compiler.go:433: 21: *goja.newMethod(&{{0xc000372550 get [namedSym]() {} 0 false} 2}) + compiler.go:433: 21: *goja.newMethod(&{{0xc0003a5e50 get [namedSym]() {} 0 false} 2}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 22: *goja.defineGetter(&{true}) compiler.go:433: 23: goja.loadDynamic(emptyStrSym) compiler.go:433: 24: goja._toPropertyKey({}) - compiler.go:433: 25: *goja.newMethod(&{{0xc0003725a0 get [emptyStrSym]() {} 0 false} 2}) + compiler.go:433: 25: *goja.newMethod(&{{0xc0003a5ea0 get [emptyStrSym]() {} 0 false} 2}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 26: *goja.defineGetter(&{true}) - compiler.go:433: 27: *goja.newMethod(&{{0xc0003725f0 id set id(v) {} 1 false} 1}) + compiler.go:433: 27: *goja.newMethod(&{{0xc0003a5ef0 id set id(v) {} 1 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 28: *goja.defineSetterKeyed(&{id true}) compiler.go:433: 29: goja.loadDynamic(anonSym) compiler.go:433: 30: goja._toPropertyKey({}) - compiler.go:433: 31: *goja.newMethod(&{{0xc000372640 set [anonSym](v) {} 1 false} 2}) + compiler.go:433: 31: *goja.newMethod(&{{0xc000020640 set [anonSym](v) {} 1 false} 2}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 32: *goja.defineSetter(&{true}) compiler.go:433: 33: goja.loadDynamic(namedSym) compiler.go:433: 34: goja._toPropertyKey({}) - compiler.go:433: 35: *goja.newMethod(&{{0xc000372690 set [namedSym](v) {} 1 false} 2}) + compiler.go:433: 35: *goja.newMethod(&{{0xc000020690 set [namedSym](v) {} 1 false} 2}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 36: *goja.defineSetter(&{true}) compiler.go:433: 37: goja.loadDynamic(emptyStrSym) compiler.go:433: 38: goja._toPropertyKey({}) - compiler.go:433: 39: *goja.newMethod(&{{0xc0003726e0 set [emptyStrSym](v) {} 1 false} 2}) + compiler.go:433: 39: *goja.newMethod(&{{0xc0000206e0 set [emptyStrSym](v) {} 1 false} 2}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -30357,7 +30393,7 @@ compiler.go:433: 135: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestAccessorFuncName (0.00s) +--- PASS: TestAccessorFuncName (0.01s) === RUN TestCoverFuncName compiler.go:433: 0: *goja.bindGlobal(&{[namedSym anonSym o] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(namedSym) @@ -30371,17 +30407,17 @@ compiler.go:433: 9: goja._initValueP({}) compiler.go:433: 10: goja.resolveVar1(o) compiler.go:433: 11: goja._newObject({}) - compiler.go:433: 12: *goja.newFunc(&{0xc000372b90 function() {} 0 false}) + compiler.go:433: 12: *goja.newFunc(&{0xc000020f00 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 13: goja.putProp(xId) - compiler.go:433: 14: *goja.newFunc(&{0xc000372c30 id function() {} 0 false}) + compiler.go:433: 14: *goja.newFunc(&{0xc000020f50 id function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 15: goja.putProp(id) - compiler.go:433: 16: *goja.newFunc(&{0xc000372cd0 x function x() {} 0 false}) + compiler.go:433: 16: *goja.newFunc(&{0xc000020fa0 x function x() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) compiler.go:433: > 1: goja._loadCallee({}) compiler.go:433: > 2: goja.initStackP(1) @@ -30392,14 +30428,14 @@ compiler.go:433: 17: goja.putProp(id1) compiler.go:433: 18: goja.loadDynamic(anonSym) compiler.go:433: 19: goja._toPropertyKey({}) - compiler.go:433: 20: *goja.newFunc(&{0xc000372d70 function() {} 0 false}) + compiler.go:433: 20: *goja.newFunc(&{0xc000020ff0 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 21: goja._setElem1Named({}) compiler.go:433: 22: goja.loadDynamic(namedSym) compiler.go:433: 23: goja._toPropertyKey({}) - compiler.go:433: 24: *goja.newFunc(&{0xc000372e10 function() {} 0 false}) + compiler.go:433: 24: *goja.newFunc(&{0xc000021040 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -30457,7 +30493,7 @@ compiler.go:433: 0: *goja.bindGlobal(&{[] [] [] [d] false}) compiler.go:433: 1: goja.loadDynamic(Object) compiler.go:433: 2: goja.getPropCallee(getOwnPropertyDescriptor) - compiler.go:433: 3: *goja.newFunc(&{0xc000373130 function() {} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc0000214a0 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -30482,7 +30518,7 @@ compiler.go:433: 0: *goja.bindGlobal(&{[p1 p2 p3 callCount currentThis nextThis afterNextThis] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(p1) compiler.go:433: 2: goja.loadDynamic(Promise) - compiler.go:433: 3: *goja.newFunc(&{0xc0003738b0 function() {} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc000021d10 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -30490,7 +30526,7 @@ compiler.go:433: 5: goja._initValueP({}) compiler.go:433: 6: goja.resolveVar1(p2) compiler.go:433: 7: goja.loadDynamic(Promise) - compiler.go:433: 8: *goja.newFunc(&{0xc000373950 function() {} 0 false}) + compiler.go:433: 8: *goja.newFunc(&{0xc000021d60 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -30498,7 +30534,7 @@ compiler.go:433: 10: goja._initValueP({}) compiler.go:433: 11: goja.resolveVar1(p3) compiler.go:433: 12: goja.loadDynamic(Promise) - compiler.go:433: 13: *goja.newFunc(&{0xc0003739a0 function() {} 0 false}) + compiler.go:433: 13: *goja.newFunc(&{0xc000021db0 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -30519,7 +30555,7 @@ compiler.go:433: 28: goja.loadDynamic(p1) compiler.go:433: 29: goja.loadDynamic(p2) compiler.go:433: 30: goja.loadDynamic(p3) - compiler.go:433: 31: *goja.newFunc(&{0xc0003739f0 function(a, b) { + compiler.go:433: 31: *goja.newFunc(&{0xc000021e00 function(a, b) { assert.sameValue(typeof a, 'function', 'type of first argument'); assert.sameValue( a.length, @@ -30631,7 +30667,7 @@ compiler.go:433: 52: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 3 ---- PASS: TestPromiseAll (0.00s) +--- PASS: TestPromiseAll (0.01s) === RUN TestPromiseExport --- PASS: TestPromiseExport (0.00s) === RUN TestErrorStack @@ -30890,10 +30926,10 @@ compiler.go:433: 142: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestToNumber (0.00s) +--- PASS: TestToNumber (0.01s) === RUN TestToValueNilBigInt compiler.go:433: 0: goja.loadDynamic(n) - compiler.go:433: 1: goja.loadVal({0xc00059eba0}) + compiler.go:433: 1: goja.loadVal({0xc00027a460}) compiler.go:433: 2: goja._op_strict_eq({}) compiler.go:433: 3: goja._saveResult({}) compiler_test.go:190: stack size: 0 @@ -30902,7 +30938,7 @@ === RUN TestClassReexport compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C] [c] false}) compiler.go:433: 1: goja.jump(1) - compiler.go:433: 2: *goja.newClass(&{0xc0006b24b0 C class C { + compiler.go:433: 2: *goja.newClass(&{0xc00050a9b0 C class C { constructor() { this.test = true; } @@ -30951,7 +30987,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestStringOOBProperties (0.00s) === RUN TestImportedString ---- PASS: TestImportedString (0.01s) +--- PASS: TestImportedString (0.07s) === RUN TestStringFromUTF16 --- PASS: TestStringFromUTF16 (0.00s) === RUN TestStringBuilder @@ -31138,7 +31174,7 @@ compiler.go:433: 169: goja._clearResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArrayIdx (0.00s) +--- PASS: TestTypedArrayIdx (0.01s) === RUN TestTypedArraySetDetachedBuffer compiler.go:433: 0: *goja.bindGlobal(&{[] [] [sample] [] false}) compiler.go:433: 1: goja.loadDynamic(Uint8Array) @@ -31238,7 +31274,7 @@ compiler.go:433: 11: goja._initValueP({}) compiler.go:433: 12: goja.resolveVar1(obj) compiler.go:433: 13: goja._newObject({}) - compiler.go:433: 14: *goja.newFunc(&{0xc0002b9540 valueOf function() { + compiler.go:433: 14: *goja.newFunc(&{0xc0003295e0 valueOf function() { throw new Error("valueOf() was called"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -31398,7 +31434,7 @@ compiler.go:433: 162: goja.loadDynamic(sample) compiler.go:433: 163: goja.loadVal({5}) compiler.go:433: 164: goja._newObject({}) - compiler.go:433: 165: *goja.newFunc(&{0xc0002b9590 get function() {} 0 false}) + compiler.go:433: 165: *goja.newFunc(&{0xc000329630 get function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -31428,7 +31464,7 @@ compiler.go:433: 189: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArrayDefinePropDetachedBuffer (0.00s) +--- PASS: TestTypedArrayDefinePropDetachedBuffer (0.01s) === RUN TestTypedArrayDefineProperty compiler.go:433: 0: *goja.bindGlobal(&{[a sample] [] [descriptor0] [] false}) compiler.go:433: 1: goja.resolveVar1(a) @@ -31439,7 +31475,7 @@ compiler.go:433: 6: goja.loadDynamic(assert) compiler.go:433: 7: goja.getPropCallee(throws) compiler.go:433: 8: goja.loadDynamic(TypeError) - compiler.go:433: 9: *goja.newFunc(&{0xc000538280 function() { + compiler.go:433: 9: *goja.newFunc(&{0xc000329ae0 function() { Object.defineProperty(a, "1", {value: 1}); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -31473,7 +31509,7 @@ compiler.go:433: 26: goja.loadDynamic(assert) compiler.go:433: 27: goja.getPropCallee(throws) compiler.go:433: 28: goja.loadDynamic(TypeError) - compiler.go:433: 29: *goja.newFunc(&{0xc0005382d0 function() { + compiler.go:433: 29: *goja.newFunc(&{0xc000329b30 function() { Object.defineProperty(a, "Infinity", {value: 8}); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -31524,7 +31560,7 @@ compiler.go:433: 63: goja.loadDynamic(assert) compiler.go:433: 64: goja.getPropCallee(throws) compiler.go:433: 65: goja.loadDynamic(TypeError) - compiler.go:433: 66: *goja.newFunc(&{0xc000538320 function() { + compiler.go:433: 66: *goja.newFunc(&{0xc000329b80 function() { Object.defineProperty(a, "0", {value: 1, writable: false}); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -31547,7 +31583,7 @@ compiler.go:433: 70: goja.loadDynamic(assert) compiler.go:433: 71: goja.getPropCallee(throws) compiler.go:433: 72: goja.loadDynamic(TypeError) - compiler.go:433: 73: *goja.newFunc(&{0xc000538370 function() { + compiler.go:433: 73: *goja.newFunc(&{0xc000329bd0 function() { Object.defineProperty(a, "0", {get() { return 1; }}); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -31556,7 +31592,7 @@ compiler.go:433: > 3: goja.loadDynamic(a) compiler.go:433: > 4: goja.loadVal({0}) compiler.go:433: > 5: goja._newObject({}) - compiler.go:433: > 6: *goja.newMethod(&{{0xc0005383c0 get get() { return 1; } 0 false} 1}) + compiler.go:433: > 6: *goja.newMethod(&{{0xc000329c20 get get() { return 1; } 0 false} 1}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadVal({1}) compiler.go:433: >> 2: goja._ret({}) @@ -31642,7 +31678,7 @@ compiler.go:433: 148: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArrayDefineProperty (0.00s) +--- PASS: TestTypedArrayDefineProperty (0.01s) === RUN TestTypedArrayGetInvalidIndex compiler.go:433: 0: *goja.bindGlobal(&{[TypedArray proto a] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(TypedArray) @@ -31660,7 +31696,7 @@ compiler.go:433: 13: goja.loadDynamic(proto) compiler.go:433: 14: goja.loadVal({1}) compiler.go:433: 15: goja._newObject({}) - compiler.go:433: 16: *goja.newFunc(&{0xc0005385f0 get function() { + compiler.go:433: 16: *goja.newFunc(&{0xc000329e50 get function() { throw new Error("OrdinaryGet was called!"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -31695,7 +31731,7 @@ compiler.go:433: 39: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArrayGetInvalidIndex (0.00s) +--- PASS: TestTypedArrayGetInvalidIndex (0.01s) === RUN TestExportArrayBufferToBytes --- PASS: TestExportArrayBufferToBytes (0.00s) === RUN TestTypedArrayExport @@ -31727,7 +31763,7 @@ === RUN TestVM1 --- PASS: TestVM1 (0.00s) === RUN TestEvalVar - compiler.go:433: 0: *goja.newFunc(&{0xc000539860 test function test() { + compiler.go:433: 0: *goja.newFunc(&{0xc000329220 test function test() { var a; return eval("var a = 'yes'; var z = 'no'; a;") === "yes" && a === "yes"; } 0 false}) @@ -31754,7 +31790,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestEvalVar (0.00s) === RUN TestResolveMixedStack1 - compiler.go:433: 0: *goja.newFunc(&{0xc000539c20 test function test(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003295e0 test function test(arg) { var a = 1; var scope = {}; (function() {return arg})(); // move arguments to stash @@ -31769,7 +31805,7 @@ compiler.go:433: > 3: goja._newObject({}) compiler.go:433: > 4: goja.initStack1P(2) compiler.go:433: > 5: goja._loadUndef({}) - compiler.go:433: > 6: *goja.newFunc(&{0xc000539c70 function() {return arg} 0 false}) + compiler.go:433: > 6: *goja.newFunc(&{0xc000329630 function() {return arg} 0 false}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStashLex(0) compiler.go:433: >> 2: goja._ret({}) @@ -31875,7 +31911,7 @@ === RUN ExampleRuntime_ForOf --- PASS: ExampleRuntime_ForOf (0.00s) PASS -ok github.com/dop251/goja 1.055s +ok github.com/dop251/goja 2.199s ? github.com/dop251/goja/ast [no test files] === RUN TestPosition --- PASS: TestPosition (0.00s) @@ -31884,7 +31920,7 @@ === RUN TestGetSourceFilename --- PASS: TestGetSourceFilename (0.00s) PASS -ok github.com/dop251/goja/file 0.003s +ok github.com/dop251/goja/file 0.012s === RUN TestFToBaseStr --- PASS: TestFToBaseStr (0.00s) === RUN TestDtostr @@ -31923,42 +31959,42 @@ === RUN TestDtostr/#16 === PAUSE TestDtostr/#16 === CONT TestDtostr/#00 -=== CONT TestDtostr/#14 -=== CONT TestDtostr/#15 -=== CONT TestDtostr/#13 === CONT TestDtostr/#12 -=== CONT TestDtostr/#16 === CONT TestDtostr/#11 === CONT TestDtostr/#10 -=== CONT TestDtostr/#09 -=== CONT TestDtostr/#08 -=== CONT TestDtostr/#07 +=== CONT TestDtostr/#15 === CONT TestDtostr/#06 -=== CONT TestDtostr/#05 +=== CONT TestDtostr/#09 === CONT TestDtostr/#04 === CONT TestDtostr/#03 === CONT TestDtostr/#02 === CONT TestDtostr/#01 +=== CONT TestDtostr/#14 +=== CONT TestDtostr/#07 +=== CONT TestDtostr/#08 +=== CONT TestDtostr/#16 +=== CONT TestDtostr/#05 +=== CONT TestDtostr/#13 --- PASS: TestDtostr (0.00s) --- PASS: TestDtostr/#00 (0.00s) - --- PASS: TestDtostr/#15 (0.00s) - --- PASS: TestDtostr/#14 (0.00s) - --- PASS: TestDtostr/#13 (0.00s) --- PASS: TestDtostr/#12 (0.00s) - --- PASS: TestDtostr/#16 (0.00s) --- PASS: TestDtostr/#11 (0.00s) --- PASS: TestDtostr/#10 (0.00s) - --- PASS: TestDtostr/#09 (0.00s) - --- PASS: TestDtostr/#08 (0.00s) - --- PASS: TestDtostr/#07 (0.00s) --- PASS: TestDtostr/#06 (0.00s) - --- PASS: TestDtostr/#05 (0.00s) + --- PASS: TestDtostr/#15 (0.00s) + --- PASS: TestDtostr/#09 (0.00s) --- PASS: TestDtostr/#04 (0.00s) --- PASS: TestDtostr/#03 (0.00s) --- PASS: TestDtostr/#02 (0.00s) --- PASS: TestDtostr/#01 (0.00s) + --- PASS: TestDtostr/#14 (0.00s) + --- PASS: TestDtostr/#07 (0.00s) + --- PASS: TestDtostr/#08 (0.00s) + --- PASS: TestDtostr/#16 (0.00s) + --- PASS: TestDtostr/#05 (0.00s) + --- PASS: TestDtostr/#13 (0.00s) PASS -ok github.com/dop251/goja/ftoa 0.005s +ok github.com/dop251/goja/ftoa 0.012s ? github.com/dop251/goja/ftoa/internal/fast [no test files] === RUN TestLexer --- PASS: TestLexer (0.00s) @@ -31995,12 +32031,12 @@ === RUN TestTransformRegExp --- PASS: TestTransformRegExp (0.00s) PASS -ok github.com/dop251/goja/parser 0.007s +ok github.com/dop251/goja/parser 0.015s ? github.com/dop251/goja/token [no test files] === RUN TestString_AsUtf16 --- PASS: TestString_AsUtf16 (0.00s) PASS -ok github.com/dop251/goja/unistring 0.003s +ok github.com/dop251/goja/unistring 0.015s create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=golang dh_prep -O--buildsystem=golang @@ -32029,12 +32065,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/2370142/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2370142/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/2452405 and its subdirectories -I: Current time: Mon Oct 12 13:06:40 -12 2026 -I: pbuilder-time-stamp: 1791853600 +I: removing directory /srv/workspace/pbuilder/2370142 and its subdirectories +I: Current time: Wed Sep 10 08:46:48 +14 2025 +I: pbuilder-time-stamp: 1757443608