Diff of the two buildlogs: -- --- b1/build.log 2025-09-10 15:17:13.313018609 +0000 +++ b2/build.log 2025-09-10 15:20:28.869269900 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Tue Oct 13 09:36:42 -12 2026 -I: pbuilder-time-stamp: 1791927402 +I: Current time: Thu Sep 11 05:17:14 +14 2025 +I: pbuilder-time-stamp: 1757517434 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/forky-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/2577820/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/3551624/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 10 15:17 /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/3551624/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/3551624/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' - DISTRIBUTION='forky' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="3" [2]="3" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.3.3(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=40 ' + DIRSTACK=() + DISTRIBUTION=forky + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='5a23e5226aba4688ba0c7f3470beb5e4' - 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='2577820' - PS1='# ' - PS2='> ' + INVOCATION_ID=843378dd9e4b491980d03cc45069ff53 + 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=3551624 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.FID7Smio/pbuilderrc_ycjd --distribution forky --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.FID7Smio/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.FID7Smio/pbuilderrc_DyAP --distribution forky --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/forky-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.FID7Smio/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/2577820/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/3551624/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 forky/main amd64 golang-github-masterminds-semver-dev all 3.2.0-1 [22.2 kB] Get: 43 http://deb.debian.org/debian forky/main amd64 golang-golang-x-text-dev all 0.22.0-1 [3995 kB] Get: 44 http://deb.debian.org/debian forky/main amd64 golang-gopkg-yaml.v2-dev all 2.4.2-1 [60.8 kB] -Fetched 66.6 MB in 5s (13.7 MB/s) +Fetched 66.6 MB in 9s (7805 kB/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 ... 19897 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 21:38:34 UTC 2026. -Universal Time is now: Tue Oct 13 21:38:34 UTC 2026. +Local time is now: Wed Sep 10 15:19:42 UTC 2025. +Universal Time is now: Wed Sep 10 15:19:42 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/3551624/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for forky +I: user script /srv/workspace/pbuilder/3551624/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,35 +422,35 @@ 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/asan -math/bits -internal/goos -unicode/utf16 + 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/itoa -internal/unsafeheader +internal/goarch unicode/utf8 internal/msan +internal/goos +internal/coverage/rtcov +internal/byteorder +internal/asan +cmp +unicode/utf16 internal/goexperiment +internal/itoa +math/bits unicode internal/godebugs -internal/goarch -internal/byteorder +internal/unsafeheader +encoding +internal/runtime/math internal/cpu sync/atomic -internal/coverage/rtcov -cmp -encoding -internal/runtime/atomic internal/runtime/syscall +internal/runtime/atomic internal/abi -internal/runtime/math internal/runtime/sys internal/chacha8rand +internal/runtime/exithook internal/bytealg math -internal/runtime/exithook internal/stringslite internal/race internal/sync @@ -428,70 +464,70 @@ slices errors sort +internal/testlog +internal/bisect internal/oserror path -strconv io -internal/testlog -internal/bisect +strconv syscall internal/godebug -bytes -github.com/go-sourcemap/sourcemap/internal/base64vlq -hash -strings golang.org/x/text/internal/tag golang.org/x/text/unicode/rangetable +hash +github.com/go-sourcemap/sourcemap/internal/base64vlq +strings +bytes hash/crc32 github.com/dop251/goja/token reflect -golang.org/x/text/transform math/rand +golang.org/x/text/transform bufio regexp/syntax internal/syscall/execenv -internal/syscall/unix time +internal/syscall/unix regexp +internal/fmtsort +github.com/dop251/goja/unistring +encoding/binary io/fs internal/poll internal/filepathlite +encoding/base64 os -internal/fmtsort -github.com/dop251/goja/unistring -encoding/binary -path/filepath -fmt io/ioutil -encoding/base64 -net/url +fmt +path/filepath go/token -github.com/dop251/goja/ftoa/internal/fast +net/url compress/flate -github.com/dlclark/regexp2/syntax encoding/json -golang.org/x/text/unicode/norm -math/big +github.com/dop251/goja/ftoa/internal/fast +github.com/dlclark/regexp2/syntax golang.org/x/text/internal/language +math/big +golang.org/x/text/unicode/norm go/scanner compress/gzip -go/ast -github.com/google/pprof/profile golang.org/x/text/internal/language/compact -golang.org/x/text/language +go/ast github.com/dlclark/regexp2 -github.com/dop251/goja/ftoa github.com/go-sourcemap/sourcemap +github.com/dop251/goja/ftoa +github.com/google/pprof/profile +github.com/dop251/goja/file +golang.org/x/text/language +github.com/dop251/goja/ast golang.org/x/text/internal golang.org/x/text/internal/colltab -github.com/dop251/goja/file +github.com/dop251/goja/parser golang.org/x/text/cases -github.com/dop251/goja/ast golang.org/x/text/collate -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.01s) +--- PASS: TestSparseArraySetLengthWithPropItems (0.00s) === RUN TestSparseArraySwitch ---- PASS: TestSparseArraySwitch (0.21s) +--- PASS: TestSparseArraySwitch (0.06s) === 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.02s) +--- PASS: TestArraySparseExportProps (0.00s) === RUN TestSparseArrayExportToSlice --- PASS: TestSparseArrayExportToSlice (0.00s) === RUN TestArray1 @@ -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(&{0xc000124c30 get function() {return 42} 0 false}) + compiler.go:433: 9: *goja.newFunc(&{0xc000021810 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(&{0xc000124c80 set function(v) {Object.defineProperty(a, "0", {value: v + 1, writable: true, configurable: true})} 1 false}) + 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: > 0: *goja.enterFuncStashless(&{0 1}) compiler.go:433: > 1: goja.loadDynamic(Object) compiler.go:433: > 2: goja.getPropCallee(defineProperty) @@ -949,7 +985,7 @@ compiler.go:433: 33: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayPushNonOptimisable (0.01s) +--- PASS: TestArrayPushNonOptimisable (0.00s) === RUN TestArraySetLengthWithPropItems compiler.go:433: 0: *goja.bindGlobal(&{[a thrown] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(a) @@ -1011,7 +1047,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArraySetLengthWithPropItems (0.00s) === RUN TestArrayFrom - compiler.go:433: 0: *goja.newFunc(&{0xc000020640 checkDestHoles function checkDestHoles(dest, prefix) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4be0 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(&{0xc000020690 checkDest function checkDest(dest, prefix) { + compiler.go:433: 1: *goja.newFunc(&{0xc0004b4c30 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(&{0xc0000206e0 Iter function Iter() { + compiler.go:433: 2: *goja.newFunc(&{0xc0004b4c80 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(&{0xc000020730 A function A() {} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc0004b4cd0 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(&{0xc000020780 T2 function T2() { + compiler.go:433: 4: *goja.newFunc(&{0xc0004b4d20 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(&{0xc0000207d0 function() { + compiler.go:433: 42: *goja.newFunc(&{0xc0004b4d70 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(&{0xc000020820 function() { + compiler.go:433: 50: *goja.newFunc(&{0xc0004b4dc0 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(&{0xc000020870 function() { + compiler.go:433: 108: *goja.newFunc(&{0xc0004b4e10 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.01s) +--- PASS: TestArrayFrom (0.00s) === RUN TestArrayOf - compiler.go:433: 0: *goja.newFunc(&{0xc000020d20 T1 function T1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4730 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(&{0xc000020d70 T2 function T2() { + compiler.go:433: 1: *goja.newFunc(&{0xc0004b4780 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(&{0xc000020dc0 function() { + compiler.go:433: 6: *goja.newFunc(&{0xc0004b47d0 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(&{0xc000020e10 function() { + compiler.go:433: 12: *goja.newFunc(&{0xc0004b4820 function() { Array.of.call(T2, 'Bob'); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -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(&{0xc0000212c0 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc0004b4f50 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(&{0xc000021310 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc0004b4fa0 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(&{{0xc0000215e0 get get() { + compiler.go:433: 24: *goja.newMethod(&{{0xc0004b5270 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(&{{0xc000021630 set set(v) { + compiler.go:433: 26: *goja.newMethod(&{{0xc0004b52c0 set set(v) { this.foo = v; } 1 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -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(&{0xc000021cc0 function () { + compiler.go:433: 278: *goja.newFunc(&{0xc0004b5950 function () { return { foo: 1 }; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -2178,7 +2214,7 @@ === RUN TestArrayFlatMap compiler.go:433: 0: *goja.bindGlobal(&{[double array] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(double) - compiler.go:433: 2: *goja.newFunc(&{0xc000020820 double function(x) { + compiler.go:433: 2: *goja.newFunc(&{0xc0004b5db0 double function(x) { if (isNaN(x)) { return x } @@ -2602,7 +2638,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestArrayToSpliced (0.00s) === RUN TestBigInt - compiler.go:433: 0: goja.loadVal({0xc000138d00}) + compiler.go:433: 0: goja.loadVal({0xc0002f5e40}) 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({0xc000139260}) + compiler.go:433: 2: goja.loadVal({0xc0003203c0}) 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(&{{0xc0000214f0 () => { (1n).toString(-1); } 0 false}}) + compiler.go:433: 13: *goja.newArrowFunc(&{{0xc0000212c0 () => { (1n).toString(-1); } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc0001392c0}) + compiler.go:433: > 1: goja.loadVal({0xc000320420}) 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(&{{0xc000021540 () => { (1n).toString(37); } 0 false}}) + compiler.go:433: 20: *goja.newArrowFunc(&{{0xc000021310 () => { (1n).toString(37); } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc000139340}) + compiler.go:433: > 1: goja.loadVal({0xc0003204a0}) 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({0xc0001393a0}) + compiler.go:433: 26: goja.loadVal({0xc000320500}) 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({0xc000139400}) + compiler.go:433: 36: goja.loadVal({0xc000320560}) 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(&{{0xc000124be0 () => { 1 - 1n; } 0 false}}) + compiler.go:433: 4: *goja.newArrowFunc(&{{0xc000346690 () => { 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(&{{0xc000124c80 () => { 1n - 1; } 0 false}}) + compiler.go:433: 11: *goja.newArrowFunc(&{{0xc000346730 () => { 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(&{{0xc000124d20 () => { 1n + 1; } 0 false}}) + compiler.go:433: 18: *goja.newArrowFunc(&{{0xc0003467d0 () => { 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(&{{0xc000124dc0 () => { 1 + 1n; } 0 false}}) + compiler.go:433: 25: *goja.newArrowFunc(&{{0xc000346870 () => { 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(&{{0xc000124e60 () => { 1 * 1n; } 0 false}}) + compiler.go:433: 32: *goja.newArrowFunc(&{{0xc000346910 () => { 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(&{{0xc000124f00 () => { 1n * 1; } 0 false}}) + compiler.go:433: 39: *goja.newArrowFunc(&{{0xc0003469b0 () => { 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(&{{0xc000124fa0 () => { 1 / 1n; } 0 false}}) + compiler.go:433: 46: *goja.newArrowFunc(&{{0xc000346a50 () => { 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(&{{0xc000125040 () => { 1n / 1; } 0 false}}) + compiler.go:433: 53: *goja.newArrowFunc(&{{0xc000346af0 () => { 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(&{{0xc0001250e0 () => { 1 % 1n; } 0 false}}) + compiler.go:433: 60: *goja.newArrowFunc(&{{0xc000346b90 () => { 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(&{{0xc000125180 () => { 1n % 1; } 0 false}}) + compiler.go:433: 67: *goja.newArrowFunc(&{{0xc000346c30 () => { 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(&{{0xc000125220 () => { 1n ** 1; } 0 false}}) + compiler.go:433: 74: *goja.newArrowFunc(&{{0xc000346cd0 () => { 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(&{{0xc0001252c0 () => { 1 ** 1n; } 0 false}}) + compiler.go:433: 81: *goja.newArrowFunc(&{{0xc000346d70 () => { 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(&{{0xc000125360 () => { 1 & 1n; } 0 false}}) + compiler.go:433: 88: *goja.newArrowFunc(&{{0xc000346e10 () => { 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(&{{0xc000125400 () => { 1n & 1; } 0 false}}) + compiler.go:433: 95: *goja.newArrowFunc(&{{0xc000346eb0 () => { 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(&{{0xc0001254a0 () => { 1 | 1n; } 0 false}}) + compiler.go:433: 102: *goja.newArrowFunc(&{{0xc000346f50 () => { 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(&{{0xc000125540 () => { 1n | 1; } 0 false}}) + compiler.go:433: 109: *goja.newArrowFunc(&{{0xc000346ff0 () => { 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(&{{0xc0001255e0 () => { 1 ^ 1n; } 0 false}}) + compiler.go:433: 116: *goja.newArrowFunc(&{{0xc000347090 () => { 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(&{{0xc0001259a0 () => { 1n ^ 1; } 0 false}}) + compiler.go:433: 123: *goja.newArrowFunc(&{{0xc000347130 () => { 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(&{{0xc000125a40 () => { 1 << 1n; } 0 false}}) + compiler.go:433: 130: *goja.newArrowFunc(&{{0xc0003471d0 () => { 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(&{{0xc000125ae0 () => { 1n << 1; } 0 false}}) + compiler.go:433: 137: *goja.newArrowFunc(&{{0xc000347270 () => { 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(&{{0xc000125b80 () => { 1 >> 1n; } 0 false}}) + compiler.go:433: 144: *goja.newArrowFunc(&{{0xc000347310 () => { 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(&{{0xc000125c20 () => { 1n >> 1; } 0 false}}) + compiler.go:433: 151: *goja.newArrowFunc(&{{0xc0003473b0 () => { 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(&{{0xc000125cc0 () => { 1 >>> 1n; } 0 false}}) + compiler.go:433: 158: *goja.newArrowFunc(&{{0xc000347450 () => { 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(&{{0xc000125d60 () => { 1n >>> 1; } 0 false}}) + compiler.go:433: 165: *goja.newArrowFunc(&{{0xc0003474f0 () => { 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({0xc00038ec00}) - compiler.go:433: 172: goja.loadVal({0xc00038ec40}) + compiler.go:433: 171: goja.loadVal({0xc000321cc0}) + compiler.go:433: 172: goja.loadVal({0xc000321d00}) compiler.go:433: 173: goja._add({}) - compiler.go:433: 174: goja.loadVal({0xc00038ec80}) + compiler.go:433: 174: goja.loadVal({0xc000321d40}) 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({0xc00038ece0}) - compiler.go:433: 181: goja.loadVal({0xc00038ed20}) + compiler.go:433: 180: goja.loadVal({0xc000321da0}) + compiler.go:433: 181: goja.loadVal({0xc000321de0}) compiler.go:433: 182: goja._sub({}) - compiler.go:433: 183: goja.loadVal({0xc00038ed60}) + compiler.go:433: 183: goja.loadVal({0xc000321e20}) 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({0xc00038edc0}) - compiler.go:433: 190: goja.loadVal({0xc00038ee00}) + compiler.go:433: 189: goja.loadVal({0xc000321e80}) + compiler.go:433: 190: goja.loadVal({0xc000321ec0}) compiler.go:433: 191: goja._mul({}) - compiler.go:433: 192: goja.loadVal({0xc00038ee40}) + compiler.go:433: 192: goja.loadVal({0xc000321f00}) 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({0xc00038eea0}) - compiler.go:433: 199: goja.loadVal({0xc00038eee0}) + compiler.go:433: 198: goja.loadVal({0xc000321f60}) + compiler.go:433: 199: goja.loadVal({0xc00034a020}) compiler.go:433: 200: goja._div({}) - compiler.go:433: 201: goja.loadVal({0xc00038ef20}) + compiler.go:433: 201: goja.loadVal({0xc00034a060}) 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({0xc00038ef80}) - compiler.go:433: 208: goja.loadVal({0xc00038efc0}) + compiler.go:433: 207: goja.loadVal({0xc00034a0c0}) + compiler.go:433: 208: goja.loadVal({0xc00034a100}) compiler.go:433: 209: goja._mod({}) - compiler.go:433: 210: goja.loadVal({0xc00038f000}) + compiler.go:433: 210: goja.loadVal({0xc00034a140}) 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({0xc00038f060}) - compiler.go:433: 217: goja.loadVal({0xc00038f0a0}) + compiler.go:433: 216: goja.loadVal({0xc00034a1a0}) + compiler.go:433: 217: goja.loadVal({0xc00034a1e0}) compiler.go:433: 218: goja._exp({}) - compiler.go:433: 219: goja.loadVal({0xc00038f0e0}) + compiler.go:433: 219: goja.loadVal({0xc00034a220}) 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({0xc00038f140}) - compiler.go:433: 226: goja.loadVal({0xc00038f180}) + compiler.go:433: 225: goja.loadVal({0xc00034a280}) + compiler.go:433: 226: goja.loadVal({0xc00034a2c0}) compiler.go:433: 227: goja._and({}) - compiler.go:433: 228: goja.loadVal({0xc00038f1c0}) + compiler.go:433: 228: goja.loadVal({0xc00034a300}) 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({0xc00038f220}) - compiler.go:433: 235: goja.loadVal({0xc00038f260}) + compiler.go:433: 234: goja.loadVal({0xc00034a360}) + compiler.go:433: 235: goja.loadVal({0xc00034a3a0}) compiler.go:433: 236: goja._or({}) - compiler.go:433: 237: goja.loadVal({0xc00038f2a0}) + compiler.go:433: 237: goja.loadVal({0xc00034a3e0}) 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({0xc00038f300}) - compiler.go:433: 244: goja.loadVal({0xc00038f340}) + compiler.go:433: 243: goja.loadVal({0xc00034a440}) + compiler.go:433: 244: goja.loadVal({0xc00034a480}) compiler.go:433: 245: goja._xor({}) - compiler.go:433: 246: goja.loadVal({0xc00038f380}) + compiler.go:433: 246: goja.loadVal({0xc00034a4c0}) 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({0xc00038f3e0}) - compiler.go:433: 253: goja.loadVal({0xc00038f420}) + compiler.go:433: 252: goja.loadVal({0xc00034a520}) + compiler.go:433: 253: goja.loadVal({0xc00034a560}) compiler.go:433: 254: goja._sal({}) - compiler.go:433: 255: goja.loadVal({0xc00038f480}) + compiler.go:433: 255: goja.loadVal({0xc00034a5a0}) 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({0xc00038f600}) - compiler.go:433: 262: goja.loadVal({0xc0001ce560}) + compiler.go:433: 261: goja.loadVal({0xc00034a600}) + compiler.go:433: 262: goja.loadVal({0xc00035b3a0}) compiler.go:433: 263: goja._sal({}) - compiler.go:433: 264: goja.loadVal({0xc00038f6c0}) + compiler.go:433: 264: goja.loadVal({0xc00034a680}) 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({0xc00038f720}) - compiler.go:433: 271: goja.loadVal({0xc00038f760}) + compiler.go:433: 270: goja.loadVal({0xc00034a6e0}) + compiler.go:433: 271: goja.loadVal({0xc00034a720}) compiler.go:433: 272: goja._sar({}) - compiler.go:433: 273: goja.loadVal({0xc00038f7a0}) + compiler.go:433: 273: goja.loadVal({0xc00034a760}) 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({0xc00038f800}) - compiler.go:433: 280: goja.loadVal({0xc0001ce6e0}) + compiler.go:433: 279: goja.loadVal({0xc00034a7c0}) + compiler.go:433: 280: goja.loadVal({0xc00035b520}) compiler.go:433: 281: goja._sar({}) - compiler.go:433: 282: goja.loadVal({0xc00038f880}) + compiler.go:433: 282: goja.loadVal({0xc00034a840}) 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({0xc00038f900}) + compiler.go:433: 286: goja.loadVal({0xc00034a8c0}) 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({0xc00038f940}) + compiler.go:433: 298: goja.loadVal({0xc00034a900}) 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({0xc00038f9a0}) + compiler.go:433: 312: goja.loadVal({0xc00034a960}) 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({0xc00038fa00}) + compiler.go:433: 319: goja.loadVal({0xc00034a9c0}) compiler.go:433: 320: goja.call(1) - compiler.go:433: 321: goja.loadVal({0xc00038fa40}) + compiler.go:433: 321: goja.loadVal({0xc00034aa00}) compiler.go:433: 322: goja._sub({}) - compiler.go:433: 323: goja.loadVal({0xc00038fa80}) + compiler.go:433: 323: goja.loadVal({0xc00034aa40}) 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({0xc00038fae0}) + compiler.go:433: 331: goja.loadVal({0xc00034aaa0}) compiler.go:433: 332: goja.call(1) compiler.go:433: 333: goja.call(1) - compiler.go:433: 334: goja.loadVal({0xc00038fb20}) + compiler.go:433: 334: goja.loadVal({0xc00034aae0}) compiler.go:433: 335: goja._sub({}) - compiler.go:433: 336: goja.loadVal({0xc00038fb60}) + compiler.go:433: 336: goja.loadVal({0xc00034ab20}) 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(&{{0xc000125ea0 () => 1n 0 false}}) + compiler.go:433: 346: *goja.newArrowFunc(&{{0xc000347630 () => 1n 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc00038fbc0}) + compiler.go:433: > 1: goja.loadVal({0xc00034ab80}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 347: goja._setElem1Named({}) - compiler.go:433: 348: goja.loadVal({0xc00038fc00}) + compiler.go:433: 348: goja.loadVal({0xc00034abc0}) compiler.go:433: 349: goja._sub({}) - compiler.go:433: 350: goja.loadVal({0xc00038fc40}) + compiler.go:433: 350: goja.loadVal({0xc00034ac00}) 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(&{{0xc000125ef0 valueOf () => 1n 0 false}}) + compiler.go:433: 357: *goja.newArrowFunc(&{{0xc000347680 valueOf () => 1n 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: goja.loadVal({0xc00038fca0}) + compiler.go:433: > 1: goja.loadVal({0xc00034ac60}) compiler.go:433: > 2: goja._ret({}) compiler.go:433: 358: goja.putProp(valueOf) - compiler.go:433: 359: goja.loadVal({0xc00038fce0}) + compiler.go:433: 359: goja.loadVal({0xc00034aca0}) compiler.go:433: 360: goja._sub({}) - compiler.go:433: 361: goja.loadVal({0xc00038fd20}) + compiler.go:433: 361: goja.loadVal({0xc00034ace0}) 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({0xc00038fd80}) + compiler.go:433: 367: goja.loadVal({0xc00034ad40}) 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({0xc00038fe00}) + compiler.go:433: 377: goja.loadVal({0xc00034adc0}) 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({0xc00038fe80}) + compiler.go:433: 386: goja.loadVal({0xc00034ae40}) 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({0xc00038ff00}) + compiler.go:433: 398: goja.loadVal({0xc00034aec0}) 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({0xc0003d0000}) + compiler.go:433: 407: goja.loadVal({0xc00034af40}) 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({0xc0003d0080}) + compiler.go:433: 417: goja.loadVal({0xc00034afc0}) 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({0xc0003d0100}) + compiler.go:433: 426: goja.loadVal({0xc00034b040}) 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({0xc0003d0180}) + compiler.go:433: 438: goja.loadVal({0xc00034b0c0}) 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({0xc0003d0200}) + compiler.go:433: 447: goja.loadVal({0xc00034b140}) 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({0xc0003d0280}) + compiler.go:433: 457: goja.loadVal({0xc00034b1c0}) 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({0xc0003d0300}) + compiler.go:433: 465: goja.loadVal({0xc00034b240}) 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({0xc0003d0380}) + compiler.go:433: 475: goja.loadVal({0xc00034b2c0}) compiler.go:433: 476: goja._op_lte({}) compiler.go:433: 477: goja.loadVal({true}) compiler.go:433: 478: goja.loadVal({le}) @@ -3341,7 +3377,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(&{0xc0002e41e0 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc0003461e0 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(&{0xc0002e4500 function() {return arguments.length} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc000346500 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(&{0xc0002e59f0 function(key, value) { + compiler.go:433: 3: *goja.newFunc(&{0xc0004b4640 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(&{0xc0003245a0 Iter function Iter(value) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5130 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(&{0xc0003245f0 t function t(prefix) { + compiler.go:433: 1: *goja.newFunc(&{0xc0004b5180 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(&{0xc000324690 function() { + compiler.go:433: 8: *goja.newFunc(&{0xc0004b5220 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(&{0xc0003246e0 function() { + compiler.go:433: 13: *goja.newFunc(&{0xc0004b5270 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(&{0xc000324780 function() { + compiler.go:433: 18: *goja.newFunc(&{0xc0004b5310 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(&{0xc0003247d0 function() { + compiler.go:433: 24: *goja.newFunc(&{0xc0004b5360 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(&{0xc000324820 function() { + compiler.go:433: 40: *goja.newFunc(&{0xc0004b53b0 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(&{{0xc000324dc0 set get set() { + compiler.go:433: 7: *goja.newMethod(&{{0xc0004b5a90 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(&{{0xc000324e10 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0004b5ae0 () => { 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(&{0xc000325220 getPrototypeOf function(target) { + compiler.go:433: 17: *goja.newFunc(&{0xc0004b5ef0 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(&{0xc000325720 setPrototypeOf function(target, prototype) { + compiler.go:433: 20: *goja.newFunc(&{0xc000020af0 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(&{0xc000325a40 isExtensible function(target) { + compiler.go:433: 13: *goja.newFunc(&{0xc000020ff0 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(&{0xc00051c190 preventExtensions function(target) { + compiler.go:433: 10: *goja.newFunc(&{0xc000021900 preventExtensions function(target) { target.canEvolve = false; Object.preventExtensions(obj); return true; @@ -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(&{0xc00051c910 getOwnPropertyDescriptor function(target, property) { + compiler.go:433: 37: *goja.newFunc(&{0xc0002c6140 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(&{0xc00051c960 function() { + compiler.go:433: 44: *goja.newFunc(&{0xc0002c6190 function() { Object.getOwnPropertyDescriptor(proxy, "foo"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -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(&{0xc00051d450 defineProperty function(target, prop, descriptor) { + compiler.go:433: 8: *goja.newFunc(&{0xc0002c6c80 defineProperty function(target, prop, descriptor) { target.foo = "321tset"; return true; } 3 false}) @@ -4464,7 +4500,7 @@ compiler.go:433: 51: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestProxy_native_proxy_defineProperty (0.01s) +--- PASS: TestProxy_native_proxy_defineProperty (0.00s) === RUN TestProxy_target_has_in compiler.go:433: 0: *goja.bindGlobal(&{[obj proxy] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(obj) @@ -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(&{0xc00051d900 has function(target, key) { + compiler.go:433: 10: *goja.newFunc(&{0xc0002c7130 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(&{0xc00051dd10 has function(target, key) { + compiler.go:433: 10: *goja.newFunc(&{0xc0002c7540 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(&{0xc0003241e0 get function(target, prop, receiver) { + compiler.go:433: 8: *goja.newFunc(&{0xc0002c7950 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(&{0xc0003245a0 ownKeys function() { + compiler.go:433: 11: *goja.newFunc(&{0xc0002c7d10 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(&{0xc000324640 getOwnPropertyDescriptor function(target, prop) { + compiler.go:433: 13: *goja.newFunc(&{0xc0002c7db0 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(&{0xc000324690 get function(target, prop, receiver) { + compiler.go:433: 15: *goja.newFunc(&{0xc0002c7e00 get function(target, prop, receiver) { if (prop === "foo") { _prop = prop; _receiver = receiver; @@ -4746,7 +4782,7 @@ compiler.go:433: 42: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestProxy_proxy_get_json_stringify (0.01s) +--- PASS: TestProxy_proxy_get_json_stringify (0.00s) === RUN TestProxy_native_proxy_get --- PASS: TestProxy_native_proxy_get (0.00s) === RUN TestProxy_native_proxy_set @@ -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(&{0xc000324d20 set function(target, prop, receiver) { + compiler.go:433: 8: *goja.newFunc(&{0xc000410550 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(&{0xc000325090 set function(target, property, value, receiver) { + compiler.go:433: 8: *goja.newFunc(&{0xc0004108c0 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(&{0xc000325400 deleteProperty function(target, prop) { + compiler.go:433: 10: *goja.newFunc(&{0xc000410c30 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(&{0xc0003258b0 ownKeys function(target) { + compiler.go:433: 10: *goja.newFunc(&{0xc0004101e0 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(&{0xc000325ae0 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc000410410 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(&{0xc000325ea0 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc0004106e0 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(&{0xc000325ef0 apply function(target, thisArg, args) { + compiler.go:433: 8: *goja.newFunc(&{0xc000410730 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(&{0xc000020820 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc000410960 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(&{0xc000020af0 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc000410c30 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(&{0xc000020b90 apply function(target, thisArg, args) { + compiler.go:433: 8: *goja.newFunc(&{0xc000410c80 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(&{0xc000020e10 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc000410f50 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(&{0xc000124410 obj function() { + compiler.go:433: 2: *goja.newFunc(&{0xc000411220 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(&{0xc000124460 apply function(target, thisArg, args) { + compiler.go:433: 8: *goja.newFunc(&{0xc000411270 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(&{0xc0000212c0 obj function(word) { + compiler.go:433: 2: *goja.newFunc(&{0xc000411540 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(&{0xc000021310 function() { + compiler.go:433: > 3: *goja.newFunc(&{0xc000411590 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(&{0xc0000217c0 obj function(word) { + compiler.go:433: 2: *goja.newFunc(&{0xc000411a40 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(&{0xc000021810 function() { + compiler.go:433: > 3: *goja.newFunc(&{0xc000411a90 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(&{0xc000021860 construct function(target, args, newTarget) { + compiler.go:433: 8: *goja.newFunc(&{0xc000411ae0 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(&{0xc0000218b0 foo function() { + compiler.go:433: > 6: *goja.newFunc(&{0xc000411b30 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(&{0xc0002e4000 ownKeys function() { + compiler.go:433: 31: *goja.newFunc(&{0xc000346140 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(&{0xc0002e4050 getOwnPropertyDescriptor function(target, p) { + compiler.go:433: 33: *goja.newFunc(&{0xc000346190 getOwnPropertyDescriptor function(target, p) { switch (p) { case "a": case "b": @@ -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(&{0xc0002e4460 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc0003465a0 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(&{0xc0002e4730 getOwnPropertyDescriptor function(_target, key) { + compiler.go:433: 18: *goja.newFunc(&{0xc000346870 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(&{0xc0002e4780 ownKeys function() { + compiler.go:433: 20: *goja.newFunc(&{0xc0003468c0 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(&{0xc0002e4f50 function() { + compiler.go:433: 7: *goja.newFunc(&{0xc000346b40 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(&{0xc0002e4fa0 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc000346b90 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(&{{0xc0002e59f0 add get add() { + compiler.go:433: 7: *goja.newMethod(&{{0xc0003479a0 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(&{{0xc0002e5a40 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0003479f0 () => { getIteratorCalled++ return { next: 1 @@ -5632,7 +5668,7 @@ compiler.go:433: 51: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSetGetAdderGetIteratorOrder (0.01s) +--- PASS: TestSetGetAdderGetIteratorOrder (0.00s) === RUN TestSubstr compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) @@ -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.02s) +--- PASS: TestSubstr (0.01s) === RUN TestStringMatchSym - compiler.go:433: 0: *goja.newFunc(&{0xc0002e4410 Prefix function Prefix(p) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b40a0 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(&{0xc0002e4460 function(s) { + compiler.go:433: 6: *goja.newFunc(&{0xc0004b40f0 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(&{0xc0002e4730 Prefix function Prefix(p) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b46e0 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(&{0xc0002e4780 function(s) { + compiler.go:433: 6: *goja.newFunc(&{0xc0004b4730 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(&{0xc0002e51d0 MyRegexp function MyRegexp(pattern, flags) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4c80 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(&{0xc0002e5270 function() { + compiler.go:433: 4: *goja.newFunc(&{0xc0004b4cd0 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(&{0xc0002e52c0 get function() { + compiler.go:433: 12: *goja.newFunc(&{0xc0004b4d20 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(&{0xc0002e5360 set function(v) { + compiler.go:433: 14: *goja.newFunc(&{0xc0004b4d70 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(&{0xc0002e53b0 get function() { + compiler.go:433: 24: *goja.newFunc(&{0xc0004b4dc0 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(&{0xc00031de30 }) + compiler.go:433: 45: *goja.newRegexp(&{0xc000351cb0 }) 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.01s) +--- PASS: TestGenericSplitter (0.00s) === 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/substringASCIIUnicode -=== CONT TestValueStringBuilder/substringUnicodeASCII +=== CONT TestValueStringBuilder/concat_ASCII_importedUnicode === CONT TestValueStringBuilder/concat_ASCII_importedASCII +=== CONT TestValueStringBuilder/concatSubstringUnicodeASCII === CONT TestValueStringBuilder/substringUnicode === CONT TestValueStringBuilder/substringASCIIPure -=== CONT TestValueStringBuilder/concatSubstringUnicodeASCII -=== CONT TestValueStringBuilder/concat_ASCII_importedUnicode +=== CONT TestValueStringBuilder/substringASCIIUnicode +=== CONT TestValueStringBuilder/substringUnicodeASCII --- PASS: TestValueStringBuilder (0.00s) --- PASS: TestValueStringBuilder/substringASCII (0.00s) - --- PASS: TestValueStringBuilder/substringASCIIUnicode (0.00s) - --- PASS: TestValueStringBuilder/substringUnicodeASCII (0.00s) + --- PASS: TestValueStringBuilder/concat_ASCII_importedUnicode (0.00s) --- PASS: TestValueStringBuilder/concat_ASCII_importedASCII (0.00s) + --- PASS: TestValueStringBuilder/concatSubstringUnicodeASCII (0.00s) --- PASS: TestValueStringBuilder/substringUnicode (0.00s) --- PASS: TestValueStringBuilder/substringASCIIPure (0.00s) - --- PASS: TestValueStringBuilder/concatSubstringUnicodeASCII (0.00s) - --- PASS: TestValueStringBuilder/concat_ASCII_importedUnicode (0.00s) + --- PASS: TestValueStringBuilder/substringASCIIUnicode (0.00s) + --- PASS: TestValueStringBuilder/substringUnicodeASCII (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(&{0xc000124960 MyArray function MyArray() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020f00 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(&{0xc0001249b0 function() { + compiler.go:433: 42: *goja.newFunc(&{0xc000020f50 function() { return true; } 0 true}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -7331,7 +7367,7 @@ compiler.go:433: 68: goja._clearResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArraySetNoOverlapDifSizeForward (0.01s) +--- PASS: TestTypedArraySetNoOverlapDifSizeForward (0.00s) === RUN TestTypedArraySetNoOverlapDifSizeBackward compiler.go:433: 0: *goja.bindGlobal(&{[buf dst src] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(buf) @@ -7475,7 +7511,7 @@ compiler.go:433: 66: goja._clearResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArraySetNoOverlapDifSizeDifBuffers (0.01s) +--- PASS: TestTypedArraySetNoOverlapDifSizeDifBuffers (0.00s) === RUN TestTypedArraySliceSameType compiler.go:433: 0: *goja.bindGlobal(&{[src dst] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(src) @@ -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(&{0xc000124780 function(a, b) { return a - b; } 2 false}) + compiler.go:433: 13: *goja.newFunc(&{0xc0004b4190 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) @@ -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(&{0xc000124a50 function(a, b) { return a > b ? 0 : -0; } 2 false}) + compiler.go:433: 12: *goja.newFunc(&{0xc0004b4780 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) @@ -7720,7 +7756,7 @@ compiler.go:433: 48: goja.jump(-29) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArraySortComparatorReturnValueNegZero (0.01s) +--- PASS: TestTypedArraySortComparatorReturnValueNegZero (0.00s) === RUN TestInt32ArrayNegativeIndex compiler.go:433: 0: goja.loadDynamic(Int32Array) compiler.go:433: 1: goja._new(0) @@ -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(&{0xc000124e10 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc0004b4be0 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(&{{0xc000125310 set get set() { + compiler.go:433: 7: *goja.newMethod(&{{0xc0004b5040 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(&{{0xc000125360 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0004b5090 () => { getIteratorCalled++ return { next: 1 @@ -8082,7 +8118,7 @@ } } [] [] 0 0 0 false}}) compiler.go:433: 6: goja.dupN(1) - compiler.go:433: 7: *goja.newMethod(&{{0xc000125d60 add get add() { + compiler.go:433: 7: *goja.newMethod(&{{0xc0004b58b0 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(&{{0xc000125db0 () => { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc0004b5900 () => { 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.01s) +--- PASS: TestWeakSetGetAdderGetIteratorOrder (0.00s) === 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(&{0xc000020fa0 function() { return eval("8; {let y = 9}")} 0 false}) + compiler.go:433: 4: *goja.newFunc(&{0xc000346280 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(&{0xc0000215e0 independent function independent() { + compiler.go:433: 0: *goja.newFunc(&{0xc000346730 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(&{0xc000021860 f function() { + compiler.go:433: 5: *goja.newFunc(&{0xc0003469b0 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(&{0xc000021c20 get function () { return this; } 0 true}) + compiler.go:433: 6: *goja.newFunc(&{0xc000346cd0 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(&{0xc000021e50 get function () { return this; } 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc000347090 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(&{0xc0002e4230 outer function outer() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003474f0 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(&{0xc0002e4280 inner function inner() { + compiler.go:433: > 5: *goja.newFunc(&{0xc000347630 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(&{0xc0002e45a0 outer function outer(argOuter) { + compiler.go:433: 0: *goja.newFunc(&{0xc000347a40 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(&{0xc0002e45f0 inner function(argInner) { + compiler.go:433: > 3: *goja.newFunc(&{0xc000347ae0 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(&{0xc0002e4a50 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc000398000 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(&{0xc0002e5130 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003982d0 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(&{0xc0002e5180 x function() { return " " + y } 0 false}) + compiler.go:433: > 4: *goja.newFunc(&{0xc000398320 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(&{0xc0002e56d0 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003986e0 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(&{0xc0002e5720 x function() { return " " + a + " " + y } 0 false}) + compiler.go:433: > 4: *goja.newFunc(&{0xc000398730 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) @@ -8562,7 +8598,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestCallFewerArgsClosureArgs (0.00s) === RUN TestCallMoreArgs - compiler.go:433: 0: *goja.newFunc(&{0xc0002e59f0 A function A(a, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc000398a00 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(&{0xc0002e5c20 A function A(a, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc000398c30 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(&{0xc00030e140 A function A(a, b, c) { + compiler.go:433: 0: *goja.newFunc(&{0xc000398ff0 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(&{0xc00030e190 B function B() { + compiler.go:433: > 1: *goja.newFunc(&{0xc000399040 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(&{0xc00030e410 f function f(param) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003992c0 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(&{0xc00030e820 getter function getter() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003996d0 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(&{0xc00030eaf0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020870 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(&{0xc00030ed70 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020b90 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(&{0xc00030eff0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020fa0 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(&{0xc00030f360 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000021590 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(&{0xc00030f6d0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000021950 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(&{0xc00030f900 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000021b80 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(&{0xc00030fc70 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc000021ef0 A function A() { var x; try { throw 4; @@ -9312,7 +9348,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestTryNoResult (0.00s) === RUN TestCatchLexicalEnv - compiler.go:433: 0: *goja.newFunc(&{0xc00055e500 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003995e0 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(&{0xc00055e7d0 Exception function Exception(message) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003999a0 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(&{0xc00055e820 A function A() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003999f0 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(&{0xc00055eaf0 Exception function Exception(message) { + compiler.go:433: 0: *goja.newFunc(&{0xc000399cc0 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(&{0xc00055eb40 A function A() { + compiler.go:433: 1: *goja.newFunc(&{0xc000399d10 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(&{0xc00055ed70 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4000 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(&{0xc00055f180 f function f(o) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4730 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(&{0xc00055f1d0 innerf function innerf(o) { + compiler.go:433: > 1: *goja.newFunc(&{0xc0004b4780 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(&{0xc00055fe00 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5450 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(&{0xc0005a0370 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5860 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(&{0xc0005a03c0 nested function nested() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0004b58b0 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(&{0xc0005a05f0 test function test() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5ae0 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(&{0xc0005a0870 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5d60 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(&{0xc0005a0af0 A function A() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003460a0 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(&{0xc0005a0dc0 O function O() { + compiler.go:433: 0: *goja.newFunc(&{0xc000346370 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(&{0xc0005a0e10 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003463c0 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(&{0xc0005a11d0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000346780 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(&{0xc0005a15e0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000346b90 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(&{0xc0005a19f0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000347270 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(&{0xc0005a1a40 function() { + compiler.go:433: > 6: *goja.newFunc(&{0xc000347310 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(&{0xc0005a1cc0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003477c0 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(&{0xc0005a1ef0 O function O() { + compiler.go:433: 0: *goja.newFunc(&{0xc000347a40 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(&{0xc000124410 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc000347d60 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(&{0xc0001246e0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002d8140 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(&{0xc000124960 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002d83c0 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(&{0xc000124be0 function() { + compiler.go:433: 7: *goja.newFunc(&{0xc0002d8640 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(&{0xc000124ff0 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002d8a50 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(&{0xc000125040 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002d8aa0 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(&{0xc000125090 F3 function F3() { + compiler.go:433: 2: *goja.newFunc(&{0xc0002d8af0 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(&{0xc0001250e0 f function() {return 42} 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc0002d8b40 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(&{0xc0001253b0 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002d8e10 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(&{0xc000125400 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002d8e60 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(&{0xc0001259a0 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002d90e0 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(&{0xc000125c70 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002d93b0 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(&{0xc000125cc0 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002d9400 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(&{0xc000020640 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002d9680 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(&{0xc000020870 valueOf function() {return 1} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc0002d98b0 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(&{0xc000020d20 foo function foo(){ rv = true; } 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0002d9cc0 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(&{0xc000020d70 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc0002d9d10 f function f() { try { eval("o.bar( foo() );"); } catch (e) { @@ -10593,7 +10629,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestEvalFunctionExpr (0.00s) === RUN TestEvalDirectScope - compiler.go:433: 0: *goja.newFunc(&{0xc000021a90 testcase function testcase() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003648c0 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(&{0xc000021ea0 testcase function testcase() { + compiler.go:433: 0: *goja.newFunc(&{0xc000364c30 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(&{0xc0002e43c0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000365040 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(&{0xc0002e47d0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000365450 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(&{0xc0002e4820 function() { x } 0 false}) + compiler.go:433: > 12: *goja.newFunc(&{0xc0003654a0 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(&{0xc0002e5360 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003659a0 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(&{0xc0003200a0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003ec550 f function f() { var x = 1; return x; } 0 false}) @@ -11093,7 +11129,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestInstanceof (0.00s) === RUN TestStrictAssign - compiler.go:433: 0: *goja.newFunc(&{0xc000321130 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003ec7d0 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(&{0xc000321360 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003eca00 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(&{0xc000321950 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003ed090 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(&{0xc000321cc0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003ed400 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(&{0xc000320140 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003ed680 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(&{0xc0003203c0 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003ed900 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(&{0xc000320690 F function F(x, y) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003edbd0 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(&{0xc000320910 F function F(x, arguments) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003ede50 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(&{0xc000320b40 f function f(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc000020780 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(&{0xc000320e10 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020aa0 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(&{0xc000321180 f function f(p = eval("var arguments = 'param'"), arguments) {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc000020ff0 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(&{{0xc0003214f0 f (p = eval("var arguments = 'param'"), q = () => arguments) => { + compiler.go:433: 6: *goja.newArrowFunc(&{{0xc0000215e0 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(&{{0xc000321540 () => arguments 0 false}}) + compiler.go:433: > 9: *goja.newArrowFunc(&{{0xc000021630 () => arguments 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadDynamic(arguments) compiler.go:433: >> 2: goja._ret({}) @@ -11550,9 +11586,9 @@ compiler.go:433: 24: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestArgumentsRedeclareArrow (0.01s) +--- PASS: TestArgumentsRedeclareArrow (0.00s) === RUN TestEvalParamWithDef - compiler.go:433: 0: *goja.newFunc(&{0xc000321810 f function f(param = 0) { + compiler.go:433: 0: *goja.newFunc(&{0xc000021950 f function f(param = 0) { eval("var param = 1"); return param; } 0 false}) @@ -11578,9 +11614,9 @@ compiler.go:433: 4: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 2 ---- PASS: TestEvalParamWithDef (0.01s) +--- PASS: TestEvalParamWithDef (0.00s) === RUN TestArgumentsRedefinedAsLetDyn - compiler.go:433: 0: *goja.newFunc(&{0xc000321bd0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000021cc0 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(&{0xc00049c320 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4280 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(&{0xc00049c5a0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4820 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(&{0xc00049c7d0 F function F() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4aa0 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(&{0xc00049d4a0 f1 function f1(count) { + compiler.go:433: 2: *goja.newFunc(&{0xc0004b5900 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(&{0xc00049d770 f function f(count) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5bd0 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(&{0xc00049d7c0 f1 function f1() { + compiler.go:433: 1: *goja.newFunc(&{0xc0004b5c20 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(&{{0xc00049dd60 x get x() {getterCalled = true} 0 false} 1}) + compiler.go:433: 9: *goja.newMethod(&{{0xc000346280 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(&{{0xc00049ddb0 x set x(_) {setterCalled = true} 1 false} 1}) + compiler.go:433: 11: *goja.newMethod(&{{0xc0003462d0 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(&{0xc000124960 F function F(x, y, x) { + compiler.go:433: 0: *goja.newFunc(&{0xc000346af0 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(&{0xc000124b90 getMessage function getMessage(message) { + compiler.go:433: 0: *goja.newFunc(&{0xc000346eb0 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(&{0xc000124e60 Proto function Proto() {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc000347310 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(&{0xc0001254f0 F function F(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc000347d10 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(&{0xc000125a40 F function F(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003640f0 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(&{0xc0000207d0 t function t(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc000364780 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(&{0xc0002e4140 F1 function F1() { + compiler.go:433: 0: *goja.newFunc(&{0xc000365cc0 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(&{0xc0002e41e0 F2 function F2() { + compiler.go:433: 1: *goja.newFunc(&{0xc000365d10 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(&{0xc0002e4230 F3 function F3() { + compiler.go:433: 2: *goja.newFunc(&{0xc000365e50 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(&{0xc0002e4460 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00037a140 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(&{0xc0002e4690 f function f(x) { + compiler.go:433: 0: *goja.newFunc(&{0xc00037a370 f function f(x) { switch(x) { case 0: break; @@ -12935,7 +12971,7 @@ compiler.go:433: 32: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSetToReadOnlyPropertyStrictBracket (0.01s) +--- PASS: TestSetToReadOnlyPropertyStrictBracket (0.00s) === RUN TestSetToReadOnlyPropertyStrictDot compiler.go:433: 0: *goja.bindGlobal(&{[o thrown] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1Strict(o) @@ -12972,7 +13008,7 @@ compiler.go:433: 32: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSetToReadOnlyPropertyStrictDot (0.01s) +--- PASS: TestSetToReadOnlyPropertyStrictDot (0.00s) === RUN TestDeleteNonConfigurablePropertyStrictBracket compiler.go:433: 0: *goja.bindGlobal(&{[o thrown] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1Strict(o) @@ -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(&{0xc0002e5400 f function() { + compiler.go:433: 12: *goja.newFunc(&{0xc0004120f0 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(&{0xc0002e5b80 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc00037a550 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.01s) +--- PASS: TestForOfArray (0.00s) === 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(&{{0xc0005a6460 attr set attr(_) { + compiler.go:433: 12: *goja.newMethod(&{{0xc00037b4a0 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(&{0xc0005a64b0 function() { + compiler.go:433: 18: *goja.newFunc(&{0xc00037b4f0 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(&{0xc0005a6500 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc00037b540 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(&{0xc0005a6550 return function() { + compiler.go:433: > 4: *goja.newFunc(&{0xc00037b590 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(&{0xc0005a65a0 function() { + compiler.go:433: 23: *goja.newFunc(&{0xc00037b5e0 function() { for (x.attr of iterable) { iterationCount += 1; } @@ -13411,7 +13447,7 @@ compiler.go:433: 39: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestForOfReturn (0.01s) +--- PASS: TestForOfReturn (0.00s) === RUN TestForOfReturn1 compiler.go:433: 0: *goja.bindGlobal(&{[iterable iterationCount] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(iterable) @@ -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(&{0xc0005a6a00 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc00037ba40 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(&{0xc0005a6a50 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc00037ba90 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(&{{0xc0005a6aa0 return get return() { + compiler.go:433: > 4: *goja.newMethod(&{{0xc00037bae0 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(&{0xc0005a6af0 function() { + compiler.go:433: 15: *goja.newFunc(&{0xc00037bb30 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(&{0xc0003ca190 f function f() {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc00037bd10 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(&{0xc0003caa50 function() { + compiler.go:433: 10: *goja.newFunc(&{0xc0004126e0 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(&{0xc0003caaa0 next function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc000412730 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(&{{0xc0003caaf0 return get return() { + compiler.go:433: > 4: *goja.newMethod(&{{0xc000412780 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(&{0xc0003caeb0 iter function iter(id) { + compiler.go:433: 0: *goja.newFunc(&{0xc000412b40 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(&{0xc0003caf00 function() { + compiler.go:433: > 1: *goja.newFunc(&{0xc000412b90 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(&{0xc0003caf50 next function () { + compiler.go:433: >> 4: *goja.newFunc(&{0xc000412be0 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(&{0xc0003cafa0 return function () { + compiler.go:433: >> 6: *goja.newFunc(&{0xc000412c30 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.01s) +--- PASS: TestIteratorReturnErrorNested (0.00s) === RUN TestReturnFromForInLoop compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0003cb310 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc000412fa0 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(&{0xc0003cb590 f function f() { + compiler.go:433: 1: *goja.newFunc(&{0xc000413220 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(&{0xc0003cb9f0 O function O() { + compiler.go:433: 0: *goja.newFunc(&{0xc000413680 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(&{0xc0003cba40 function() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0004136d0 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(&{0xc0003cbdb0 f function f(o) { + compiler.go:433: 0: *goja.newFunc(&{0xc000413a40 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(&{0xc0003cbe00 innerf function innerf(o) { + compiler.go:433: > 1: *goja.newFunc(&{0xc000413a90 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(&{0xc0005a6dc0 function () { + compiler.go:433: 1: *goja.newFunc(&{0xc000413e50 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(&{0xc0005a6e10 v function() { + compiler.go:433: > 4: *goja.newFunc(&{0xc000413ea0 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(&{0xc0005a7180 function () { + compiler.go:433: 1: *goja.newFunc(&{0xc000020910 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(&{0xc0005a74a0 function () { + compiler.go:433: 1: *goja.newFunc(&{0xc000020e60 function () { eval("function x(){}"); return typeof x === "function" && delete x; } 0 false}) @@ -14119,7 +14155,7 @@ --- PASS: TestTryResultEmptyContinueLoop (0.00s) === RUN TestTryEmptyCatchStackLeak compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000124820 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000021d60 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(&{0xc000124870 function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc000021db0 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(&{{0xc000125360 1000 get 1e3() {return true;} 0 false} 1}) + compiler.go:433: 14: *goja.newMethod(&{{0xc0004b4d20 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(&{{0xc0001253b0 0 0(){return true} 0 false} 1}) + compiler.go:433: 35: *goja.newMethod(&{{0xc0004b4d70 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(&{0xc000125ea0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0004b5540 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(&{0xc000125ef0 eval function() {return 1;} 0 true}) + compiler.go:433: > 2: *goja.newFunc(&{0xc0004b5590 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(&{{0xc000020640 arguments arguments() {return 2;} 0 true} 1}) + compiler.go:433: > 4: *goja.newMethod(&{{0xc0004b55e0 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(&{0xc000020690 test1 function test1() {} 0 true}) + compiler.go:433: > 6: *goja.newFunc(&{0xc0004b5630 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) @@ -14362,7 +14398,7 @@ compiler.go:433: 3: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestObjectLiteralFuncProps (0.01s) +--- PASS: TestObjectLiteralFuncProps (0.00s) === RUN TestFuncName compiler.go:433: 0: *goja.bindGlobal(&{[method o] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(method) @@ -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(&{0xc000020910 method function() { + compiler.go:433: 6: *goja.newFunc(&{0xc0004b59f0 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(&{0xc000020960 method function method() { + compiler.go:433: 8: *goja.newFunc(&{0xc0004b5a40 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(&{0xc000020d70 f function() {} 0 false}) + compiler.go:433: 2: *goja.newFunc(&{0xc0004b5db0 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(&{0xc000020dc0 f1 function() {} 0 false}) + compiler.go:433: 5: *goja.newFunc(&{0xc0004b5e00 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(&{0xc000020e10 f2 function() {} 0 false}) + compiler.go:433: 7: *goja.newFunc(&{0xc0004b5e50 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(&{0xc000021310 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000346280 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(&{0xc000021900 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000346870 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(&{0xc000021950 inner function inner() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0003468c0 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(&{0xc0000219a0 assertThrows function assertThrows(fn) { + compiler.go:433: >> 5: *goja.newFunc(&{0xc000346910 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(&{0xc000021a90 function() { + compiler.go:433: >> 9: *goja.newFunc(&{0xc000346960 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(&{0xc000021b80 function() { + compiler.go:433: >> 14: *goja.newFunc(&{0xc0003469b0 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(&{0xc000021bd0 function() { + compiler.go:433: >> 19: *goja.newFunc(&{0xc000346a00 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(&{0xc000021c20 function() { + compiler.go:433: >> 24: *goja.newFunc(&{0xc000346a50 function() { eval("global++"); } 0 false}) compiler.go:433: >>> 0: *goja.enterFunc(&{map[ this:1073741824 arguments:1073741825] 2 0 0 1 true true}) @@ -14743,10 +14779,10 @@ compiler.go:433: 6: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 4 ---- PASS: TestLexicalDynamicScope (0.01s) +--- PASS: TestLexicalDynamicScope (0.00s) === RUN TestLexicalDynamicScope1 compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0002e4320 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003473b0 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(&{0xc0002e43c0 function() { + compiler.go:433: > 8: *goja.newFunc(&{0xc0003474a0 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(&{0xc0002e4730 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003479f0 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(&{0xc0002e5bd0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000364910 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(&{0xc000310230 function() { + compiler.go:433: 14: *goja.newFunc(&{0xc000364e10 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(&{0xc000310690 function () { return i; } 0 false}) + compiler.go:433: 14: *goja.newFunc(&{0xc000365270 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({}) @@ -14996,7 +15032,7 @@ compiler.go:433: 49: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 7 ---- PASS: TestLexicalForLoopClosureInNext (0.01s) +--- PASS: TestLexicalForLoopClosureInNext (0.00s) === RUN TestVarForLoop compiler.go:433: 0: *goja.bindGlobal(&{[f i j] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(f) @@ -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(&{0xc000310b40 function() { + compiler.go:433: 16: *goja.newFunc(&{0xc000365720 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(&{0xc000310d70 function() { + compiler.go:433: 19: *goja.newFunc(&{0xc000365950 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.01s) +--- PASS: TestLexicalForOfLoop (0.00s) === 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(&{0xc000311130 function() { + compiler.go:433: 30: *goja.newFunc(&{0xc000365d10 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(&{0xc000311180 function(item) {res += item()} 1 false}) + compiler.go:433: 48: *goja.newFunc(&{0xc000365e50 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(&{0xc000410460 function() { + compiler.go:433: 3: *goja.newFunc(&{0xc0003b0410 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(&{0xc0004107d0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b0780 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(&{0xc000410820 ff function ff() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003b07d0 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(&{0xc000410b90 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b0b40 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(&{0xc000410be0 ff function ff() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0003b0b90 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(&{0xc000410fa0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b0f50 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(&{0xc000411310 f function f() {} 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc0003b12c0 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(&{0xc000411540 f1 function f1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b0190 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(&{0xc0004118b0 f1 function f1() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b0500 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(&{0xc000411950 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc0003b05a0 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(&{0xc000411c20 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b0870 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(&{0xc000411c70 function() { + compiler.go:433: 7: *goja.newFunc(&{0xc0003b08c0 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(&{0xc000622050 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b0d70 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(&{0xc0006220a0 testAssignment function testAssignment() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003b0dc0 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.01s) +--- PASS: TestAssignAfterStackExpand (0.00s) === RUN TestArgAccessFromDynamicStash - compiler.go:433: 0: *goja.newFunc(&{0xc000310320 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b1180 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(&{0xc000310370 test function test() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0003b11d0 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(&{0xc000310690 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc0003b15e0 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(&{0xc0003106e0 inner function inner() { + compiler.go:433: > 8: *goja.newFunc(&{0xc0003b1630 inner function inner() { eval("var a = true"); return a; } 0 false}) @@ -15794,7 +15830,7 @@ --- PASS: TestObjectAssignmentPattern (0.00s) === RUN TestObjectAssignmentPatternNoDyn compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000310eb0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0003b1e00 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(&{0xc000311720 src function src() { + compiler.go:433: 0: *goja.newFunc(&{0xc000020cd0 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(&{{0xc000311770 a get a() { + compiler.go:433: > 7: *goja.newMethod(&{{0xc000020e60 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(&{0xc0003117c0 prop1 function prop1() { + compiler.go:433: 1: *goja.newFunc(&{0xc000020eb0 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(&{0xc000311810 toString function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc000020f00 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(&{0xc000311860 prop2 function prop2() { + compiler.go:433: 2: *goja.newFunc(&{0xc000020f50 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(&{0xc0003118b0 toString function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc000020fa0 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(&{0xc000311900 target function target() { + compiler.go:433: 3: *goja.newFunc(&{0xc000020ff0 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.01s) +--- PASS: TestObjectAssignmentPatternEvalOrder (0.00s) === RUN TestArrayAssignmentPatternEvalOrder - compiler.go:433: 0: *goja.newFunc(&{0xc00051e280 src function src() { + compiler.go:433: 0: *goja.newFunc(&{0xc0000219f0 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(&{0xc00051e2d0 target function target() { + compiler.go:433: 1: *goja.newFunc(&{0xc000021a40 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(&{0xc00051e320 default_a function default_a() { + compiler.go:433: 2: *goja.newFunc(&{0xc000021a90 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(&{0xc00051e370 default_b function default_b() { + compiler.go:433: 3: *goja.newFunc(&{0xc000021ae0 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(&{0xc00051e3c0 function() { + compiler.go:433: 11: *goja.newFunc(&{0xc000021b30 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(&{0xc00051e410 next function() { + compiler.go:433: > 4: *goja.newFunc(&{0xc000021b80 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(&{0xc00051e460 return function() { + compiler.go:433: > 6: *goja.newFunc(&{0xc000021bd0 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(&{{0xc00051e4b0 a get a() { + compiler.go:433: 15: *goja.newMethod(&{{0xc000021c20 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(&{{0xc00051e500 b get b() { + compiler.go:433: 17: *goja.newMethod(&{{0xc000021c70 b get b() { trace += "get b,"; return "b"; } 0 false} 1}) @@ -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(&{0xc0006222d0 function() { + compiler.go:433: 73: *goja.newFunc(&{0xc0004b4140 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(&{{0xc000622690 get [Symbol.toString]() { + compiler.go:433: 5: *goja.newMethod(&{{0xc0004b4820 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(&{0xc000622a00 key function key() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4c30 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(&{0xc000622a50 toString function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc0004b4c80 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(&{0xc000622aa0 val function val() { + compiler.go:433: 1: *goja.newFunc(&{0xc0004b4cd0 val function val() { trace.push("val"); return "val"; } 0 false}) @@ -16749,7 +16785,7 @@ compiler.go:433: 39: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestArrayBindingPatternRestPattern (0.01s) +--- PASS: TestArrayBindingPatternRestPattern (0.00s) === RUN TestForVarPattern compiler.go:433: 0: *goja.bindGlobal(&{[o trace key value] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(o) @@ -16844,7 +16880,7 @@ === RUN TestAssignPatternRestTrailingComma --- PASS: TestAssignPatternRestTrailingComma (0.00s) === RUN TestFuncParamInitializerSimple - compiler.go:433: 0: *goja.newFunc(&{0xc00051ec80 f function f(a = 1) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5e00 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(&{0xc00051eeb0 f function f({a, b} = {a: 1, b: 2}) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003460f0 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(&{0xc00051f0e0 f function f(arg1, ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc000346320 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(&{0xc00051f310 f function f(arg1, ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc000346550 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(&{0xc00051f6d0 f function f(...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc000346910 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(&{{0xc00051f720 () => rest 0 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000346960 () => 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(&{0xc00051fa40 f function f(first, ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc000346d70 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(&{{0xc00051fa90 () => first 0 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000346e10 () => 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(&{{0xc00051fae0 () => rest 0 false}}) + compiler.go:433: > 6: *goja.newArrowFunc(&{{0xc000346eb0 () => 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(&{0xc00051fe50 f function f(first = eval(), ...rest) { + compiler.go:433: 0: *goja.newFunc(&{0xc000347450 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(&{{0xc00051fea0 () => first 0 false}}) + compiler.go:433: > 14: *goja.newArrowFunc(&{{0xc0003474a0 () => 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(&{{0xc00051fef0 () => rest 0 false}}) + compiler.go:433: > 16: *goja.newArrowFunc(&{{0xc0003474f0 () => rest 0 false}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadStashLex(2) compiler.go:433: >> 2: goja._ret({}) @@ -17080,9 +17116,9 @@ compiler.go:433: 6: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestRestArgsInStashFwdRef (0.01s) +--- PASS: TestRestArgsInStashFwdRef (0.00s) === RUN TestFuncParamRestPattern - compiler.go:433: 0: *goja.newFunc(&{0xc000622230 f function f(arg1, ...{0: rest1, 1: rest2}) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003479a0 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(&{0xc000622460 f function f(a = b + 1, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc000347cc0 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(&{0xc0006227d0 f function f(a = b + 1, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc0003641e0 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(&{0xc000622820 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc000364230 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(&{0xc000622b40 f function f(a = inner) { + compiler.go:433: 0: *goja.newFunc(&{0xc000364550 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(&{0xc000622b90 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc0003645a0 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(&{0xc000622e60 f function f(a = eval("inner")) { + compiler.go:433: 0: *goja.newFunc(&{0xc000364870 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(&{0xc000622eb0 function() { + compiler.go:433: 5: *goja.newFunc(&{0xc0003648c0 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(&{0xc000623180 f function f(a = f) { + compiler.go:433: 0: *goja.newFunc(&{0xc000364b90 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(&{0xc0006233b0 f function f(a = f) { + compiler.go:433: 0: *goja.newFunc(&{0xc000364dc0 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(&{0xc000623810 f function f( + compiler.go:433: 0: *goja.newFunc(&{0xc000365130 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(&{0xc000623860 probe1 function() { return x; } 0 false}) + compiler.go:433: > 9: *goja.newFunc(&{0xc000365180 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(&{0xc0006238b0 probe2 function() { return x; } 0 false}) + compiler.go:433: > 19: *goja.newFunc(&{0xc0003651d0 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(&{0xc000623d60 A function A() {} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc000365680 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(&{0xc000623db0 D function D(message = '') { + compiler.go:433: 1: *goja.newFunc(&{0xc0003656d0 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(&{0xc000623e00 function () {} 0 false}) + compiler.go:433: 4: *goja.newFunc(&{0xc000365720 function () {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -17408,9 +17444,9 @@ compiler.go:433: 8: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDefParamsStackPtr (0.01s) +--- PASS: TestDefParamsStackPtr (0.00s) === RUN TestNestedVariadicCalls - compiler.go:433: 0: *goja.newFunc(&{0xc000124370 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000365950 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(&{0xc0001246e0 C function C() { + compiler.go:433: 0: *goja.newFunc(&{0xc000365c20 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(&{0xc000124a50 A function A(message) { return message; } 1 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0006282d0 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(&{0xc000124aa0 B function B(...args){ + compiler.go:433: 1: *goja.newFunc(&{0xc000628320 B function B(...args){ return A(...args); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 0}) @@ -17520,7 +17556,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestVariadicUseStackVars (0.00s) === RUN TestCatchParamPattern - compiler.go:433: 0: *goja.newFunc(&{0xc000124cd0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000628550 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(&{0xc000125310 fn function() { + compiler.go:433: 2: *goja.newFunc(&{0xc000628b90 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(&{{0xc000125360 (arg) => { var local; context = this; } 1 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000628be0 (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(&{0xc0001255e0 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc000628e60 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(&{{0xc000020820 tmpl tmpl() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000629db0 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(&{{0xc000020870 () => {} 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc000629e00 () => {} 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(&{[0xc000348cc0] [0xc000348cf0]}) + compiler.go:433: 11: *goja.getTaggedTmplObject(&{[0xc0000ef500] [0xc0000ef590]}) 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(&{0xc000020e10 b function b(){ return "b" } 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0003643c0 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(&{0xc000020e60 c function c(){ return "c" } 0 false}) + compiler.go:433: 1: *goja.newFunc(&{0xc000364410 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(&{0xc000020eb0 a function a(){} 0 false}) + compiler.go:433: 2: *goja.newFunc(&{0xc000364460 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(&{0xc0000214f0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000364910 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(&{0xc000021540 a function a(){} 0 false}) + compiler.go:433: > 1: *goja.newFunc(&{0xc000364960 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(&{0xc000021590 b function b(){ return "b" } 0 false}) + compiler.go:433: > 3: *goja.newFunc(&{0xc0003649b0 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(&{0xc0000215e0 c function c(){ return "c" } 0 false}) + compiler.go:433: > 5: *goja.newFunc(&{0xc000364a00 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(&{0xc000021630 a function a(){} 0 false}) + compiler.go:433: > 7: *goja.newFunc(&{0xc000364a50 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(&{{0xc000021a90 valueOf valueOf() { + compiler.go:433: 2: *goja.newMethod(&{{0xc000364e10 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(&{{0xc000021b80 get get() { + compiler.go:433: 44: *goja.newMethod(&{{0xc000364e60 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(&{{0xc000021bd0 set set() { + compiler.go:433: 46: *goja.newMethod(&{{0xc000364eb0 set set() { throw new Error(); } 0 false} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18008,7 +18044,7 @@ compiler.go:433: 214: goja.leaveTry({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSrcLocations (0.01s) +--- PASS: TestSrcLocations (0.00s) === RUN TestSrcLocationThrowLiteral --- PASS: TestSrcLocationThrowLiteral (0.00s) === RUN TestSrcLocation @@ -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(&{0xc0002e52c0 f function f(arg = 1 + 2) {return arg} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc0000207d0 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(&{0xc0002e55e0 f function f() {return 1 + 2} 0 false}) + compiler.go:433: 0: *goja.newFunc(&{0xc000020aa0 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(&{{0xc000362410 () => { + compiler.go:433: 3: *goja.newArrowFunc(&{{0xc000021a90 () => { 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(&{{0xc000362460 () => { + compiler.go:433: 9: *goja.newArrowFunc(&{{0xc000021ae0 () => { ({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(&{{0xc0003624b0 () => { + compiler.go:433: 15: *goja.newArrowFunc(&{{0xc000021b30 () => { (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(&{0xc000362500 function() { + compiler.go:433: > 2: *goja.newFunc(&{0xc000021b80 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(&{{0xc000362550 () => { + compiler.go:433: 21: *goja.newArrowFunc(&{{0xc000021bd0 () => { 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(&{0xc0003625a0 t function t() { + compiler.go:433: > 1: *goja.newFunc(&{0xc000021c20 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(&{0xc0003625f0 function() { + compiler.go:433: > 10: *goja.newFunc(&{0xc000021c70 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(&{{0xc000362640 () => { + compiler.go:433: 27: *goja.newArrowFunc(&{{0xc000021cc0 () => { 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(&{0xc000362690 t function t() { + compiler.go:433: > 1: *goja.newFunc(&{0xc000021d10 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(&{0xc0003626e0 function() { + compiler.go:433: > 10: *goja.newFunc(&{0xc000021d60 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(&{{0xc000362730 get get() { + compiler.go:433: >> 8: *goja.newMethod(&{{0xc000021db0 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.01s) +--- PASS: TestAssignBeforeInit (0.00s) === RUN TestOptChainCallee compiler.go:433: 0: *goja.bindGlobal(&{[a o] [] [] [] false}) compiler.go:433: 1: goja.loadDynamic(assert) @@ -18433,7 +18469,7 @@ === RUN TestObjectLiteralSuper compiler.go:433: 0: *goja.bindGlobal(&{[] [] [] [proto o] false}) compiler.go:433: 1: goja._newObject({}) - compiler.go:433: 2: *goja.newMethod(&{{0xc0005545f0 m m() { + compiler.go:433: 2: *goja.newMethod(&{{0xc0004b47d0 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(&{{0xc000554640 m m() { + compiler.go:433: 6: *goja.newMethod(&{{0xc0004b4820 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 - } 0xc0003621e0 [] [] 0 0 0 false}) + } 0xc0004b4aa0 [] [] 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(&{{0xc000362230 a () => this 0 true}}) + compiler.go:433: > 2: *goja.newArrowFunc(&{{0xc0004b4af0 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 - } 0xc000362820 [] [] 0 0 0 false}) + } 0xc0004b4d70 [] [] 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(&{0xc000362a50 0 0}) + compiler.go:433: 4: *goja.newStaticFieldInit(&{0xc0004b4fa0 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(&{{0xc000362aa0 capture () => this 0 true}}) + compiler.go:433: > 3: *goja.newArrowFunc(&{{0xc0004b4ff0 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(&{0xc000362cd0 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc0004b5220 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(&{0xc000363540 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc0004b5bd0 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(&{{0xc000363590 { + compiler.go:433: > 7: *goja.newMethod(&{{0xc0004b5c20 { 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(&{{0xc000363360 C class C extends Error { + compiler.go:433: 4: *goja.newDerivedClass(&{{0xc0004b59f0 C class C extends Error { a = true; b = 1; ["b".toUpperCase()] = 2 @@ -18631,7 +18667,7 @@ static { this.supername = super.name; } - } 0xc0003634f0 [] [] 0 0 0 false}}) + } 0xc0004b5b80 [] [] 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(&{{0xc0003633b0 M M() { + compiler.go:433: 9: *goja.newMethod(&{{0xc0004b5a40 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(&{{0xc000363400 M1 M1() { + compiler.go:433: 11: *goja.newMethod(&{{0xc0004b5a90 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(&{{0xc000363450 m m() { + compiler.go:433: 14: *goja.newMethod(&{{0xc0004b5ae0 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(&{{0xc0003634a0 m1 m1() { + compiler.go:433: 16: *goja.newMethod(&{{0xc0004b5b30 m1 m1() { return true; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -18724,7 +18760,7 @@ 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(&{{0xc0003638b0 C class C extends Error { + compiler.go:433: 3: *goja.newDerivedClass(&{{0xc000346000 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(&{{0xc000363900 m m() { + compiler.go:433: 5: *goja.newMethod(&{{0xc000346050 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; } - } 0xc000554be0 [] [] 0 0 0 false}) + } 0xc000346c30 [] [] 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(&{{0xc000554b40 p get p() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000346b40 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(&{{0xc000554b90 p set p(v) { + compiler.go:433: 10: *goja.newMethod(&{{0xc000346b90 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(&{{0xc000554c30 g g() { + compiler.go:433: 19: *goja.newMethod(&{{0xc000346cd0 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(&{{0xc000554cd0 s s(v) { + compiler.go:433: 21: *goja.newMethod(&{{0xc000346e10 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(&{{0xc000554d20 inc inc() { + compiler.go:433: 23: *goja.newMethod(&{{0xc000346eb0 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(&{{0xc000554d70 incR incR() { + compiler.go:433: 25: *goja.newMethod(&{{0xc000346f00 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(&{{0xc000554dc0 inc1 inc1() { + compiler.go:433: 27: *goja.newMethod(&{{0xc000346f50 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(&{{0xc000554e10 inc1R inc1R() { + compiler.go:433: 29: *goja.newMethod(&{{0xc000346ff0 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(&{{0xc000554e60 unary unary() { + compiler.go:433: 31: *goja.newMethod(&{{0xc000347090 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(&{{0xc000554eb0 pattern pattern() { + compiler.go:433: 33: *goja.newMethod(&{{0xc000347130 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.01s) +--- PASS: TestSuperRefDot (0.00s) === 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]; } - } 0xc000555720 [] [] 1 0 0 true}) + } 0xc000347e00 [] [] 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(&{{0xc0005554f0 g g() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000347ae0 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(&{{0xc000555540 s s(v) { + compiler.go:433: 6: *goja.newMethod(&{{0xc000347b30 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(&{{0xc000555590 inc inc() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000347bd0 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(&{{0xc0005555e0 incR incR() { + compiler.go:433: 10: *goja.newMethod(&{{0xc000347c20 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(&{{0xc000555630 inc1 inc1() { + compiler.go:433: 12: *goja.newMethod(&{{0xc000347cc0 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(&{{0xc000555680 inc1R inc1R() { + compiler.go:433: 14: *goja.newMethod(&{{0xc000347d10 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(&{{0xc0005556d0 pattern pattern() { + compiler.go:433: 16: *goja.newMethod(&{{0xc000347d60 pattern pattern() { [this.#p] = [9]; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -19389,7 +19425,7 @@ compiler.go:433: 122: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestPrivateRefDot (0.01s) +--- PASS: TestPrivateRefDot (0.00s) === RUN TestPrivateRefDotEval compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C o] [] false}) compiler.go:433: 1: *goja.enterBlock(&{map[C:2684354560] 1 0}) @@ -19413,13 +19449,13 @@ pattern() { eval("[this.#p] = [9]"); } - } 0xc000124910 [p] [] 1 0 0 true}) + } 0xc0003625f0 [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(&{{0xc000124780 g g() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000362460 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(&{{0xc0001247d0 s s(v) { + compiler.go:433: 6: *goja.newMethod(&{{0xc0003624b0 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(&{{0xc000124820 incR incR() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000362500 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(&{{0xc000124870 inc1R inc1R() { + compiler.go:433: 10: *goja.newMethod(&{{0xc000362550 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(&{{0xc0001248c0 pattern pattern() { + compiler.go:433: 12: *goja.newMethod(&{{0xc0003625a0 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}) @@ -19578,13 +19614,13 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc000125590 p get p() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000363270 p get p() { return function() { return this; }; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0001255e0 function() { + compiler.go:433: > 1: *goja.newFunc(&{0xc0003632c0 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(&{{0xc000125950 m m() { + compiler.go:433: 13: *goja.newMethod(&{{0xc000363310 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; } - } 0xc000020690 [] [] 0 0 0 false}) + } 0xc000363c70 [] [] 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(&{{0xc000555ef0 p get p() { + compiler.go:433: 10: *goja.newMethod(&{{0xc000363bd0 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(&{{0xc000020640 p set p(v) { + compiler.go:433: 12: *goja.newMethod(&{{0xc000363c20 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(&{{0xc0000206e0 g g() { + compiler.go:433: 21: *goja.newMethod(&{{0xc000363cc0 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(&{{0xc000020730 s s(v) { + compiler.go:433: 23: *goja.newMethod(&{{0xc000363d10 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(&{{0xc000020780 inc inc() { + compiler.go:433: 25: *goja.newMethod(&{{0xc000363d60 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(&{{0xc0000207d0 incR incR() { + compiler.go:433: 27: *goja.newMethod(&{{0xc000363db0 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(&{{0xc000020820 inc1 inc1() { + compiler.go:433: 29: *goja.newMethod(&{{0xc000363e00 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(&{{0xc000020870 inc1R inc1R() { + compiler.go:433: 31: *goja.newMethod(&{{0xc000363e50 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(&{{0xc0000208c0 pattern pattern() { + compiler.go:433: 33: *goja.newMethod(&{{0xc000363ea0 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.01s) +--- PASS: TestSuperRefBracket (0.00s) === RUN TestSuperRefBracketEvalOrder - compiler.go:433: 0: *goja.newFunc(&{0xc0002e4370 key function key() { + compiler.go:433: 0: *goja.newFunc(&{0xc000362320 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(&{0xc0002e43c0 C class C { + compiler.go:433: 5: *goja.newClass(&{0xc000362370 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(&{{0xc0002e4410 () => new C 0 false}}) + compiler.go:433: 11: *goja.newArrowFunc(&{{0xc0003623c0 () => 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) @@ -20076,13 +20112,13 @@ } } [] [] 0 0 0 false}) compiler.go:433: 5: goja.dupN(1) - compiler.go:433: 6: *goja.newMethod(&{{0xc0002e4870 p get p() { + compiler.go:433: 6: *goja.newMethod(&{{0xc000362820 p get p() { return function() { return this; }; } 0 true} 1}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: > 1: *goja.newFunc(&{0xc0002e4a50 function() { + compiler.go:433: > 1: *goja.newFunc(&{0xc000362870 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(&{{0xc0002e4b90 m m() { + compiler.go:433: 15: *goja.newMethod(&{{0xc0003628c0 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(&{{0xc0002e51d0 Derived class Derived extends Object { + compiler.go:433: 5: *goja.newDerivedClass(&{{0xc000362be0 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(&{0xc0002e5770 initF function initF() { + compiler.go:433: 0: *goja.newFunc(&{0xc000362ff0 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() - } 0xc0002e57c0 [] [] 0 0 0 false}) + } 0xc000363040 [] [] 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(&{{0xc0002e5bd0 f get f() {} 0 true} 1}) + compiler.go:433: 5: *goja.newMethod(&{{0xc0003632c0 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(&{{0xc0004c60f0 a a() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000363720 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(&{{0xc0004c6140 m m() { + compiler.go:433: 13: *goja.newMethod(&{{0xc000363770 m m() { class Inner extends super.a() { } return new Inner(); @@ -20295,7 +20331,7 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newMethod(&{{0xc0004c6640 a a() { + compiler.go:433: 4: *goja.newMethod(&{{0xc0003640a0 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(&{{0xc0004c6690 m m() { + compiler.go:433: 13: *goja.newMethod(&{{0xc0003640f0 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(&{0xc0004c66e0 f function f(cls) { + compiler.go:433: > 1: *goja.newFunc(&{0xc000364140 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(&{0xc0004c69b0 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc000364410 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 - } 0xc0004c6910 [] [] 0 0 0 false}) + } 0xc000364370 [] [] 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(&{0xc0004c6be0 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc000364640 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(&{0xc0004c6e10 0 0}) + compiler.go:433: 2: *goja.newStaticFieldInit(&{0xc000364870 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(&{{0xc0004c7220 () => { + compiler.go:433: 3: *goja.newArrowFunc(&{{0xc000364c80 () => { 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(&{{0xc0004c7540 C class C extends class {} { + compiler.go:433: 7: *goja.newDerivedClass(&{{0xc000364fa0 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(&{{0xc0004c7590 f () => super() 0 true}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000364ff0 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) @@ -20498,7 +20534,7 @@ compiler.go:433: 12: goja.initGlobalP(c) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestClassCaptureSuperCallInArrowFunc (0.01s) +--- PASS: TestClassCaptureSuperCallInArrowFunc (0.00s) === RUN TestClassCaptureSuperCallInNestedArrowFunc compiler.go:433: 0: *goja.bindGlobal(&{[] [] [f P C] [] false}) compiler.go:433: 1: goja._loadUndef({}) @@ -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(&{{0xc000020d20 C class C extends P { + compiler.go:433: 9: *goja.newDerivedClass(&{{0xc0003653b0 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(&{{0xc000020d70 f () => () => super() 0 true}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc000365400 f () => () => super() 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) - compiler.go:433: >> 1: *goja.newArrowFunc(&{{0xc000020dc0 () => super() 0 true}}) + compiler.go:433: >> 1: *goja.newArrowFunc(&{{0xc000365450 () => 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(&{{0xc000021220 f f() { + compiler.go:433: 11: *goja.newMethod(&{{0xc000365720 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(&{0xc000021680 0 0}) + compiler.go:433: 3: *goja.newStaticFieldInit(&{0xc000365b80 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(&{0xc000021d60 1 0}) + compiler.go:433: 6: *goja.newStaticFieldInit(&{0xc000020910 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(&{{0xc000021db0 { + compiler.go:433: > 5: *goja.newMethod(&{{0xc0000209b0 { 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(&{{0xc000021e00 f2 o => eval("o.#a") 1 true}}) + compiler.go:433: >> 3: *goja.newArrowFunc(&{{0xc000020a00 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(&{{0xc000021ea0 () => C.# 0 true}}) + compiler.go:433: >> 15: *goja.newArrowFunc(&{{0xc000020aa0 () => 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(&{{0xc000021cc0 f1 o => eval("o.#a") 1 true}}) + compiler.go:433: 8: *goja.newArrowFunc(&{{0xc000020870 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(&{{0xc000021ef0 () => f1(C) 0 false}}) + compiler.go:433: 20: *goja.newArrowFunc(&{{0xc000020af0 () => 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.01s) +--- PASS: TestClassPrivateElemInEval (0.00s) === 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(&{0xc0004c7d10 1 0}) + compiler.go:433: 6: *goja.newStaticFieldInit(&{0xc0000216d0 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(&{{0xc0004c7d60 { + compiler.go:433: > 3: *goja.newMethod(&{{0xc000021720 { 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(&{{0xc0004c7db0 f2 o => (0, eval)("o.#a") 1 true}}) + compiler.go:433: >> 2: *goja.newArrowFunc(&{{0xc000021770 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(&{{0xc0004c7e00 () => (0, eval)("C.#a") 0 true}}) + compiler.go:433: >> 7: *goja.newArrowFunc(&{{0xc000021810 () => (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(&{{0xc0004c7cc0 f1 o => (0, eval)("o.#a") 1 true}}) + compiler.go:433: 8: *goja.newArrowFunc(&{{0xc000021680 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(&{{0xc0004c7e50 () => f1(C) 0 false}}) + compiler.go:433: 18: *goja.newArrowFunc(&{{0xc000021860 () => 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(&{{0xc0004c7ef0 () => f2(C) 0 false}}) + compiler.go:433: 24: *goja.newArrowFunc(&{{0xc000021900 () => 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(&{{0xc000124780 () => { + compiler.go:433: 3: *goja.newArrowFunc(&{{0xc000021e00 () => { 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(&{0xc0001247d0 1 0}) + compiler.go:433: > 2: *goja.newStaticFieldInit(&{0xc000021e50 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(&{{0xc000124820 { + compiler.go:433: >> 3: *goja.newMethod(&{{0xc000021ea0 { 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(); } - } 0xc000125040 [] [] 1 2 0 true}) + } 0xc0004b4af0 [] [] 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(&{{0xc000124e60 #b get #b() {} 0 true} 1}) + compiler.go:433: 4: *goja.newMethod(&{{0xc0004b48c0 #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(&{{0xc000124eb0 #b set #b(_) {} 1 true} 1}) + compiler.go:433: 6: *goja.newMethod(&{{0xc0004b4910 #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(&{{0xc000124f00 c get c() { + compiler.go:433: 8: *goja.newMethod(&{{0xc0004b4960 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(&{{0xc000124f50 #m #m() { + compiler.go:433: 10: *goja.newMethod(&{{0xc0004b49b0 #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(&{{0xc000124fa0 getter getter(inst) { + compiler.go:433: 13: *goja.newMethod(&{{0xc0004b4a50 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.01s) +--- PASS: TestClassPrivateElementsDecl (0.00s) === 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; } - } 0xc000125310 [] [] 1 0 0 true}) + } 0xc0004b4e10 [] [] 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(&{{0xc0001252c0 check check(inst) { + compiler.go:433: 3: *goja.newMethod(&{{0xc0004b4dc0 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(&{0xc000125cc0 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b54a0 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(&{{0xc000125d10 capture () => this 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc0004b54f0 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({}) @@ -21146,7 +21182,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestThisResolutionWithArg (0.00s) === RUN TestThisResolutionArgInStash - compiler.go:433: 0: *goja.newFunc(&{0xc0005540a0 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5900 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(&{{0xc0005540f0 capture () => this + arg 0 false}}) + compiler.go:433: > 4: *goja.newArrowFunc(&{{0xc0004b5950 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(&{0xc000554410 f function f(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5c70 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(&{{0xc000554460 capture () => this + arg 0 false}}) + compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc0004b5cc0 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(&{0xc0005549b0 function() { + compiler.go:433: 2: *goja.newFunc(&{0xc0003462d0 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(&{0xc000554a00 dummy function dummy() {} 0 false}) + compiler.go:433: > 1: *goja.newFunc(&{0xc000346320 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(&{0xc000554a50 f1 function f1() {} 0 false}) + compiler.go:433: > 3: *goja.newFunc(&{0xc000346370 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(&{0xc000554aa0 f function f() { + compiler.go:433: > 5: *goja.newFunc(&{0xc0003463c0 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(&{{0xc000554af0 globalSink () => d 0 false}}) + compiler.go:433: >> 18: *goja.newArrowFunc(&{{0xc000346410 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(&{0xc000555090 function() { + compiler.go:433: 2: *goja.newFunc(&{0xc0003469b0 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(&{0xc0005550e0 dummy1 function dummy1() {} 0 false}) + compiler.go:433: > 1: *goja.newFunc(&{0xc000346a00 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(&{0xc000555130 f1 function f1() {} 0 false}) + compiler.go:433: > 3: *goja.newFunc(&{0xc000346a50 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(&{0xc000555180 f function f() { + compiler.go:433: > 5: *goja.newFunc(&{0xc000346aa0 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(&{{0xc0005551d0 globalSink () => d 0 false}}) + compiler.go:433: >> 29: *goja.newArrowFunc(&{{0xc000346af0 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.01s) +--- PASS: TestForInLoopContinueOuter (0.00s) === 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; - } 0xc0005555e0 [] [] 0 0 0 false}) + } 0xc000347180 [] [] 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(&{{0xc000555ae0 get get() {} 0 true} 1}) + compiler.go:433: 4: *goja.newMethod(&{{0xc0003478b0 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(&{{0xc000555b30 set set() {} 0 true} 1}) + compiler.go:433: 6: *goja.newMethod(&{{0xc000347950 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(&{{0xc000555b80 async async() {} 0 true} 1}) + compiler.go:433: 8: *goja.newMethod(&{{0xc0003479a0 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(&{{0xc000555bd0 static static() {} 0 true} 1}) + compiler.go:433: 10: *goja.newMethod(&{{0xc0003479f0 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(&{{0xc000555e50 0 0() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000347d60 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(&{0xc000298e10 defParam function defParam() { + compiler.go:433: 0: *goja.newFunc(&{0xc000356e10 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(&{{0xc000298e60 g function* g(param = defParam()) { + compiler.go:433: 1: *goja.newGeneratorFunc(&{{0xc000356e60 g function* g(param = defParam()) { const THREE = 3; trace += "2"; assert.sameValue(Math.floor(yield 1), THREE); @@ -21699,7 +21735,7 @@ compiler.go:433: 58: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestGeneratorFunc (0.01s) +--- PASS: TestGeneratorFunc (0.00s) === RUN TestGeneratorMethods compiler.go:433: 0: *goja.bindGlobal(&{[] [] [C c iter res] [] false}) compiler.go:433: 1: goja.jump(1) @@ -21710,7 +21746,7 @@ } } [] [] 0 0 0 false}) compiler.go:433: 3: goja.dupN(1) - compiler.go:433: 4: *goja.newGeneratorMethod(&{{{0xc000298230 g *g(param) { + compiler.go:433: 4: *goja.newGeneratorMethod(&{{{0xc0003570e0 g *g(param) { yield 1; yield 2; } 1 true} 1}}) @@ -21869,7 +21905,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestNestedDestructArray (0.00s) === RUN TestThisInStash - compiler.go:433: 0: *goja.newFunc(&{0xc0002988c0 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000357770 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(&{{0xc000298910 () => this 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc0003577c0 () => 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(&{0xc000298960 f1 function f1() { + compiler.go:433: 1: *goja.newFunc(&{0xc000357810 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(&{{0xc0002989b0 () => this 0 false}}) + compiler.go:433: > 5: *goja.newArrowFunc(&{{0xc000357860 () => 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(&{{0xc000298ff0 C class C extends Object { + compiler.go:433: 3: *goja.newDerivedClass(&{{0xc000357d10 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(&{{0xc000299040 () => this 0 true}}) + compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc000357d60 () => 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(&{{0xc000299090 C1 class C1 extends Object { + compiler.go:433: 8: *goja.newDerivedClass(&{{0xc000357db0 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(&{{0xc0002990e0 () => this 0 true}}) + compiler.go:433: > 7: *goja.newArrowFunc(&{{0xc000356000 () => this 0 true}}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: >> 1: goja.loadThisStash(0) compiler.go:433: >> 2: goja._ret({}) @@ -22085,7 +22121,7 @@ === RUN TestWrongThisRest compiler.go:433: 0: *goja.bindGlobal(&{[] [] [mine] [a] false}) compiler.go:433: 1: goja.jump(1) - compiler.go:433: 2: *goja.newClass(&{0xc000299540 mine class mine { + compiler.go:433: 2: *goja.newClass(&{0xc000356460 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(&{{0xc000299590 f f(...argument) { + compiler.go:433: 4: *goja.newMethod(&{{0xc0003564b0 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(&{{0xc0002995e0 s () => { + compiler.go:433: > 23: *goja.newArrowFunc(&{{0xc000356500 s () => { for (const arg of argument) arg.call() return this.field } 0 true}}) @@ -22182,11 +22218,11 @@ compiler.go:433: 19: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 1 ---- PASS: TestWrongThisRest (0.01s) +--- PASS: TestWrongThisRest (0.00s) === RUN TestWrongThisExtraArg compiler.go:433: 0: *goja.bindGlobal(&{[] [] [mine] [a] false}) compiler.go:433: 1: goja.jump(1) - compiler.go:433: 2: *goja.newClass(&{0xc0002999a0 mine class mine { + compiler.go:433: 2: *goja.newClass(&{0xc0003568c0 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(&{{0xc0002999f0 f f() { + compiler.go:433: 4: *goja.newMethod(&{{0xc000356910 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(&{{0xc000299a40 () => this.field 0 true}}) + compiler.go:433: > 21: *goja.newArrowFunc(&{{0xc000356960 () => 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(&{0xc000299cc0 f function f(a = b + 1, b) { // forward ref argument to make sure args remain on stack + compiler.go:433: 0: *goja.newFunc(&{0xc000356be0 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'"); } @@ -22450,7 +22486,7 @@ compiler.go:433: 140: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDateUTC (0.01s) +--- PASS: TestDateUTC (0.00s) === RUN TestNewDate compiler.go:433: 0: *goja.bindGlobal(&{[d1] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(d1) @@ -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.01s) +--- PASS: TestDateSetters (0.00s) === RUN TestDateParse - compiler.go:433: 0: *goja.newFunc(&{0xc0000214f0 testParse function testParse(str, expected) { + compiler.go:433: 0: *goja.newFunc(&{0xc000357e50 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.02s) +--- PASS: TestDateParse (0.00s) === RUN TestDateMaxValues compiler.go:433: 0: goja.loadDynamic(assert) compiler.go:433: 1: goja.getPropCallee(sameValue) @@ -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(&{0xc000020a50 toISOString function () { return 1; } 0 false}) + compiler.go:433: 5: *goja.newFunc(&{0xc000364370 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(&{0xc0000213b0 testDateParse function testDateParse(string) { + compiler.go:433: 0: *goja.newFunc(&{0xc000364a00 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(&{0xc000021400 testDateParseLocalTime function testDateParseLocalTime(string) { + compiler.go:433: 1: *goja.newFunc(&{0xc000364a50 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(&{0xc000021450 testDateParseMisc function testDateParseMisc(array) { + compiler.go:433: 2: *goja.newFunc(&{0xc000364aa0 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(&{0xc000021630 function (s) { + compiler.go:433: 581: *goja.newFunc(&{0xc000364be0 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(&{0xc000021720 function (s) { + compiler.go:433: 642: *goja.newFunc(&{0xc000364cd0 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.12s) +--- PASS: TestDateParseV8 (0.03s) === RUN TestFuncProto - compiler.go:433: 0: *goja.newFunc(&{0xc000020870 A function A() {} 0 true}) + compiler.go:433: 0: *goja.newFunc(&{0xc000364230 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(&{0xc0000208c0 B function B() {} 0 true}) + compiler.go:433: 1: *goja.newFunc(&{0xc000364280 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({}) @@ -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(&{0xc0001244b0 function() {} 0 false}) + compiler.go:433: 6: *goja.newFunc(&{0xc0003645a0 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(&{0xc000124500 set function(_value) {} 1 false}) + compiler.go:433: 9: *goja.newFunc(&{0xc0003645f0 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,7 +24339,7 @@ func_test.go:237: In 0.2 func_test.go:200: Exited func_test.go:195: Main is finished ---- PASS: TestAsyncContextTracker (0.01s) +--- PASS: TestAsyncContextTracker (0.00s) --- PASS: TestAsyncContextTracker/#00 (0.00s) --- PASS: TestAsyncContextTracker/#01 (0.00s) --- PASS: TestAsyncContextTracker/#02 (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(&{0xc000020c30 function() { + compiler.go:433: 55: *goja.newFunc(&{0xc000020910 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.01s) +--- PASS: TestDynamicObject (0.00s) === 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(&{0xc000020eb0 valueOf function() { + compiler.go:433: 3: *goja.newFunc(&{0xc000020c30 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(&{0xc0000215e0 function() { + compiler.go:433: 363: *goja.newFunc(&{0xc000021360 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(&{0xc000021680 function() { + compiler.go:433: 370: *goja.newFunc(&{0xc0000214a0 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(&{0xc0000216d0 function() { + compiler.go:433: 377: *goja.newFunc(&{0xc0000214f0 function() { "use strict"; Object.defineProperty(a, 0, {value: 0, writable: false, enumerable: false, configurable: true}); } 0 true}) @@ -24951,9 +24987,9 @@ compiler.go:433: 380: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDynamicArray (0.01s) +--- PASS: TestDynamicArray (0.00s) === RUN TestSharedDynamicObject ---- PASS: TestSharedDynamicObject (0.03s) +--- PASS: TestSharedDynamicObject (0.01s) === RUN TestSharedDynamicArray --- PASS: TestSharedDynamicArray (0.01s) === RUN TestGoReflectArray @@ -24994,7 +25030,7 @@ --- PASS: TestGoMapReflectWithMethods (0.00s) === RUN TestGoMapReflectWithProto compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc0002e5130 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000364550 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(&{0xc0002e5180 get function() { + compiler.go:433: > 14: *goja.newFunc(&{0xc0003645a0 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(&{0xc0002e51d0 set function(v) { + compiler.go:433: > 16: *goja.newFunc(&{0xc0003645f0 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(&{0xc0002e5270 get function() { + compiler.go:433: > 25: *goja.newFunc(&{0xc000364640 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(&{0xc0002e52c0 set function(v) { + compiler.go:433: > 27: *goja.newFunc(&{0xc000364690 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(&{0xc0002e53b0 function() { + compiler.go:433: > 114: *goja.newFunc(&{0xc000364730 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.01s) +--- PASS: TestGoMapReflectWithProto (0.00s) === RUN TestGoMapReflectProtoProp compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000124500 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000364a50 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(&{0xc0001245a0 function() { + compiler.go:433: > 21: *goja.newFunc(&{0xc000364aa0 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(&{0xc0002e59a0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000365e50 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(&{0xc0002e59f0 get function() { + compiler.go:433: > 14: *goja.newFunc(&{0xc000365ea0 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(&{0xc0002e5a40 set function(v) { + compiler.go:433: > 16: *goja.newFunc(&{0xc000365ef0 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(&{0xc0002e5a90 get function() { + compiler.go:433: > 25: *goja.newFunc(&{0xc000346000 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(&{0xc0002e5ae0 set function(v) { + compiler.go:433: > 27: *goja.newFunc(&{0xc000346050 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(&{0xc0002e5b80 function() { + compiler.go:433: > 112: *goja.newFunc(&{0xc0003460f0 function() { m.t2 = 1; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -25564,7 +25600,7 @@ --- PASS: TestGoMapWithProto (0.00s) === RUN TestGoMapProtoProp compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000124d70 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0000208c0 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(&{0xc000124dc0 function() { + compiler.go:433: > 21: *goja.newFunc(&{0xc000020910 function() { m.ro = 43; } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -25629,10 +25665,10 @@ compiler.go:433: 3: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestGoMapProtoProp (0.01s) +--- PASS: TestGoMapProtoProp (0.00s) === RUN TestGoMapProtoPropChain compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000124ff0 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc000020c30 function() { "use strict"; var p1 = Object.create(null); m.__proto__ = p1; @@ -25851,7 +25887,7 @@ === RUN TestFieldOverriding --- PASS: TestFieldOverriding (0.00s) === RUN TestDefinePropertyUnexportedJsName ---- PASS: TestDefinePropertyUnexportedJsName (0.01s) +--- PASS: TestDefinePropertyUnexportedJsName (0.00s) === RUN TestHasOwnPropertyUnexportedJsName --- PASS: TestHasOwnPropertyUnexportedJsName (0.00s) === RUN TestNestedStructSet @@ -25866,7 +25902,7 @@ --- PASS: TestStringer (0.00s) === RUN TestGoReflectWithProto compiler.go:433: 0: goja._loadUndef({}) - compiler.go:433: 1: *goja.newFunc(&{0xc000302a00 function() { + compiler.go:433: 1: *goja.newFunc(&{0xc0004b5d60 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(&{0xc000302a50 set function(v) { + compiler.go:433: > 12: *goja.newFunc(&{0xc0004b5db0 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(&{0xc000302af0 get function() { + compiler.go:433: > 14: *goja.newFunc(&{0xc0004b5ea0 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(&{0xc000302b40 function() { + compiler.go:433: > 54: *goja.newFunc(&{0xc0004b5ef0 function() { Object.defineProperty(s, "test", {value: 43}); } 0 true}) compiler.go:433: >> 0: *goja.enterFuncStashless(&{0 0}) @@ -26013,7 +26049,7 @@ === RUN TestGoReflectUnicodeProps --- PASS: TestGoReflectUnicodeProps (0.00s) === RUN TestGoReflectPreserveType ---- PASS: TestGoReflectPreserveType (0.01s) +--- PASS: TestGoReflectPreserveType (0.00s) === RUN TestGoReflectCopyOnWrite --- PASS: TestGoReflectCopyOnWrite (0.00s) === RUN TestReflectSetReflectValue @@ -26105,7 +26141,7 @@ === RUN TestGoSliceReflectStructField --- PASS: TestGoSliceReflectStructField (0.00s) === RUN TestGoSliceReflectExportToStructField ---- PASS: TestGoSliceReflectExportToStructField (0.01s) +--- PASS: TestGoSliceReflectExportToStructField (0.00s) === RUN TestGoSliceReflectProtoMethod --- PASS: TestGoSliceReflectProtoMethod (0.00s) === RUN TestGoSliceReflectMethod @@ -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(&{0xc000302780 set function(v) { + compiler.go:433: 75: *goja.newFunc(&{0xc0002eac80 set function(v) { v5 = v; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -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(&{0xc00038efa0 set function(v) { + compiler.go:433: 75: *goja.newFunc(&{0xc000392370 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(&{{0xc0002e4280 get get() {return "c"} 0 false} 1}) + compiler.go:433: 8: *goja.newMethod(&{{0xc000393540 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(&{{0xc0002e42d0 with w\u0069th() { return 42; } 0 false} 1}) + compiler.go:433: 30: *goja.newMethod(&{{0xc000393590 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(&{{0xc0002e45f0 a get a() { + compiler.go:433: 8: *goja.newMethod(&{{0xc000393860 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(&{{0xc0002e4640 a get a() { + compiler.go:433: 26: *goja.newMethod(&{{0xc0003938b0 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(&{0xc0002e5b30 getOwnPropertyDescriptor function(_target, key) { + compiler.go:433: 26: *goja.newFunc(&{0xc000392c80 getOwnPropertyDescriptor function(_target, key) { getOwnKeys.push(key); } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 2}) @@ -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(&{0xc00030daa0 (['\"])(.*?)\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0003bfc20 (['\"])(.*?)\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(&{0xc000243440 [65279 40 1090 1077 1089 1090 41]}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0003d95c0 [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(&{0xc000258d20 (['\"])(.*?)['\"]}) + compiler.go:433: 2: *goja.newRegexp(&{0xc00029cfc0 (['\"])(.*?)['\"]}) 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(&{0xc000270990 [65279 40 91 39 92 34 93 41 40 1090 1077 1089 1090 41 92 49]}) + compiler.go:433: 2: *goja.newRegexp(&{0xc00024e900 [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(&{0xc00037a420 (['\"])(.*?)\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000290510 (['\"])(.*?)\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(&{0xc00037be60 \s+}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000291cb0 \s+}) compiler.go:433: 3: goja.loadVal({}) compiler.go:433: 4: goja.call(2) compiler.go:433: 5: goja.loadVal({[65279 8203]}) @@ -27081,7 +27117,7 @@ === 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(&{0xc0001271d0 (A)\s+\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0002af890 (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(&{0xc000334b70 []}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0002c1470 []}) 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(&{0xc00024c450 [^]}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0002f8930 [^]}) 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(&{0xc00024d8f0 ([])\1}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0002f9d10 ([])\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(&{0xc00031cde0 ([\D1])\1}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0003511d0 ([\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(&{0xc0002f63c0 ()|}) + compiler.go:433: 0: *goja.newRegexp(&{0xc000358750 ()|}) 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(&{0xc0002ee270 ^\s*|\s*$}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000359bf0 ^\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(&{0xc0002efad0 ([a-zA-Z]|\s)+}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000375590 ([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(&{0xc0005b7560 ^.*\s+(\S+\s+\S+$)}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0003d6e70 ^.*\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(&{0xc0005c1080 [\S]}) + compiler.go:433: 0: *goja.newRegexp(&{0xc00042a8a0 [\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(&{0xc0002de480 .}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0002929f0 .}) 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(&{0xc0002df890 (.)}) + compiler.go:433: 0: *goja.newRegexp(&{0xc000293d70 (.)}) 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(&{0xc00017ef30 .}) + compiler.go:433: 0: *goja.newRegexp(&{0xc00029b170 .}) 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(&{0xc000348690 ([+-])\1}) + compiler.go:433: 2: *goja.newRegexp(&{0xc0002a4690 ([+-])\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(&{0xc0002a8630 [65279 92 10835]}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0002ba150 [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(&{0xc00033b140 \uD800}) + compiler.go:433: 5: *goja.newRegexp(&{0xc0002c8c00 \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(&{0xc00033b200 \uD800}) + compiler.go:433: 13: *goja.newRegexp(&{0xc0002c8cc0 \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(&{0xc00033b2c0 [65279 55296 56320]}) + compiler.go:433: 21: *goja.newRegexp(&{0xc0002c8d80 [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(&{0xc00033b350 \uD800}) + compiler.go:433: 29: *goja.newRegexp(&{0xc0002c8e10 \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(&{0xc00033b470 \uD800}) + compiler.go:433: 66: *goja.newRegexp(&{0xc0002c8f30 \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(&{0xc00033b530 (?:)}) + compiler.go:433: 81: *goja.newRegexp(&{0xc0002c8ff0 (?:)}) 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(&{0xc00033b5f0 (0){0}}) + compiler.go:433: 100: *goja.newRegexp(&{0xc0002c90b0 (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(&{0xc00033b6b0 (?=)a}) + compiler.go:433: 114: *goja.newRegexp(&{0xc0002c9170 (?=)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(&{0xc00033b8c0 .}) + compiler.go:433: 129: *goja.newRegexp(&{0xc0002c9380 .}) compiler.go:433: 130: goja.getPropCallee(exec) compiler.go:433: 131: goja.loadVal({[65279 55357 56834]}) compiler.go:433: 132: goja.call(1) @@ -27424,7 +27460,7 @@ === RUN TestRegexpUnicode compiler.go:433: 0: *goja.bindGlobal(&{[re] [] [] [] false}) compiler.go:433: 1: goja.loadDynamicCallee(assert) - compiler.go:433: 2: *goja.newRegexp(&{0xc000382060 \uD800}) + compiler.go:433: 2: *goja.newRegexp(&{0xc00031b3e0 \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(&{0xc000382180 \uFFFD}) + compiler.go:433: 11: *goja.newRegexp(&{0xc00031b500 \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(&{0xc000382240 \uD800\uDC00}) + compiler.go:433: 20: *goja.newRegexp(&{0xc00031b5c0 \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(&{0xc000382300 \uD800}) + compiler.go:433: 28: *goja.newRegexp(&{0xc00031b680 \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(&{0xc0003823c0 \uD800}) + compiler.go:433: 39: *goja.newRegexp(&{0xc00031b740 \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(&{0xc000382480 (?:)}) + compiler.go:433: 52: *goja.newRegexp(&{0xc00031b800 (?:)}) 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(&{0xc000382540 (0){0}}) + compiler.go:433: 69: *goja.newRegexp(&{0xc00031b8c0 (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(&{0xc000382600 \ud834\udf06}) + compiler.go:433: 85: *goja.newRegexp(&{0xc00031b980 \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(&{0xc0003c4c00 ^a}) + compiler.go:433: 4: *goja.newRegexp(&{0xc000360000 ^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(&{0xc000302f00 function(s) { + compiler.go:433: 8: *goja.newFunc(&{0xc0004b4ff0 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(&{0xc0003d6480 (?:)}) + compiler.go:433: 11: *goja.newRegexp(&{0xc00037b800 (?:)}) 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.01s) +--- PASS: TestRegexpUnicodeAdvanceStringIndex (0.00s) === RUN TestRegexpInit compiler.go:433: 0: goja.loadDynamicCallee(RegExp) compiler.go:433: 1: goja.loadVal({.}) @@ -27796,7 +27832,7 @@ compiler_test.go:191: stashAllocs: 0 --- PASS: TestRegexpToString (0.00s) === RUN TestRegexpEscapeSource - compiler.go:433: 0: *goja.newRegexp(&{0xc00033b3b0 href="(.+?)(\/.*\/\S+?)\/"}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0003dbbf0 href="(.+?)(\/.*\/\S+?)\/"}) compiler.go:433: 1: goja.getProp(source) compiler.go:433: 2: goja._saveResult({}) compiler_test.go:190: stack size: 0 @@ -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(&{0xc000268b90 value function() { + compiler.go:433: 8: *goja.newFunc(&{0xc0004b4c30 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(&{0xc0001270b0 a}) + compiler.go:433: 16: *goja.newRegexp(&{0xc00027fa40 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(&{0xc000268e60 get function() { + compiler.go:433: 11: *goja.newFunc(&{0xc0004b4f00 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(&{0xc00031d500 \d}) + compiler.go:433: 5: *goja.newRegexp(&{0xc0003be5a0 \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(&{0xc000269180 value function() { + compiler.go:433: 16: *goja.newFunc(&{0xc0004b5270 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(&{0xc00031d710 \w}) + compiler.go:433: > 10: *goja.newRegexp(&{0xc0003be7b0 \w}) compiler.go:433: > 11: goja._ret({}) compiler.go:433: 17: goja.putProp(value) compiler.go:433: 18: goja.call(3) @@ -28033,7 +28069,7 @@ compiler_test.go:191: stashAllocs: 1 --- PASS: TestRegexpMatchAllConstructor (0.00s) === RUN TestRegexp2InvalidEscape - compiler.go:433: 0: *goja.newRegexp(&{0xc0002ef110 (?=)\x0}) + compiler.go:433: 0: *goja.newRegexp(&{0xc0003d98c0 (?=)\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(&{0xc0005b6720 (0)0|}) + compiler.go:433: 0: *goja.newRegexp(&{0xc00029ce40 (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(&{0xc000269860 function(s) { + compiler.go:433: 6: *goja.newFunc(&{0xc0004b5c20 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(&{0xc0002698b0 function() {new RegExp(s)} 0 false}) + compiler.go:433: > 4: *goja.newFunc(&{0xc0004b5c70 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(&{0xc0002df080 (?<=Jack|Tom)Sprat}) + compiler.go:433: 2: *goja.newRegexp(&{0xc000291650 (?<=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(&{0xc0002df260 (? { + compiler.go:433: 19: *goja.newArrowFunc(&{{0xc000020ff0 () => { 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(&{{0xc0002e4ff0 () => { + compiler.go:433: 25: *goja.newArrowFunc(&{{0xc000021040 () => { new RegExp("a\\u{6_5}", "u"); } 0 false}}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -28229,7 +28265,7 @@ 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(&{0xc000310510 \u{0_2}}) + compiler.go:433: 4: *goja.newRegexp(&{0xc000375e30 \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(&{0xc000310630 \u{2}}) + compiler.go:433: 15: *goja.newRegexp(&{0xc000375f50 \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(&{0xc000310750 \u{2}}) + compiler.go:433: 26: *goja.newRegexp(&{0xc0003d60f0 \u{2}}) compiler.go:433: 27: goja.call(1) compiler.go:433: 28: goja.loadVal({0}) compiler.go:433: 29: goja._getElem({}) @@ -28671,7 +28707,7 @@ === RUN TestSetFuncVariadicFuncArg --- PASS: TestSetFuncVariadicFuncArg (0.00s) === RUN TestArgsKeys - compiler.go:433: 0: *goja.newFunc(&{0xc000020910 testArgs2 function testArgs2(x, y, z) { + compiler.go:433: 0: *goja.newFunc(&{0xc000365c70 testArgs2 function testArgs2(x, y, z) { // Properties of the arguments object are enumerable. return Object.keys(arguments); } 3 false}) @@ -28795,7 +28831,7 @@ === RUN TestIPow --- PASS: TestIPow (0.00s) === RUN TestInterrupt ---- PASS: TestInterrupt (0.21s) +--- PASS: TestInterrupt (0.20s) === RUN TestRuntime_ExportToNumbers === RUN TestRuntime_ExportToNumbers/int8/no_overflow === RUN TestRuntime_ExportToNumbers/int8/overflow @@ -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(&{0xc000020820 function(x, y) { return y - x } 2 false}) + compiler.go:433: 22: *goja.newFunc(&{0xc000347810 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) @@ -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(&{0xc000020af0 function(a, b) { return a - b; } 2 false}) + compiler.go:433: 16: *goja.newFunc(&{0xc0004b4000 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) @@ -29088,7 +29124,7 @@ compiler.go:433: 52: goja.jump(-29) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestSortComparatorReturnValueFloats (0.01s) +--- PASS: TestSortComparatorReturnValueFloats (0.00s) === RUN TestSortComparatorReturnValueNegZero compiler.go:433: 0: *goja.bindGlobal(&{[a i] [] [] [] false}) compiler.go:433: 1: goja.resolveVar1(a) @@ -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(&{0xc0000207d0 function(a, b) { return a > b ? 0 : -0; } 2 false}) + compiler.go:433: 10: *goja.newFunc(&{0xc0004b4640 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(&{0xc000020a50 x function x(a, b) { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4870 x function x(a, b) { return a === undefined && b === 1; } 2 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{1 2}) @@ -29198,7 +29234,7 @@ === RUN TestCreateObject --- PASS: TestCreateObject (0.00s) === RUN TestInterruptInWrappedFunction ---- PASS: TestInterruptInWrappedFunction (0.02s) +--- PASS: TestInterruptInWrappedFunction (0.01s) === RUN TestInterruptInWrappedFunction2 --- PASS: TestInterruptInWrappedFunction2 (0.00s) === RUN TestInterruptInWrappedFunction2Recover @@ -29211,7 +29247,7 @@ runtime_test.go:1892: abort this at :3:23(3) --- PASS: TestInterruptWithPromises (0.00s) === RUN TestRunLoopPreempt ---- PASS: TestRunLoopPreempt (0.11s) +--- PASS: TestRunLoopPreempt (0.10s) === 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(&{0xc000268280 f function f() { + compiler.go:433: 0: *goja.newFunc(&{0xc000346280 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(&{0xc000268b40 toString function() { + compiler.go:433: 11: *goja.newFunc(&{0xc000346ff0 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(&{0xc000268b90 valueOf function() { + compiler.go:433: 13: *goja.newFunc(&{0xc000347090 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(&{0xc000268be0 function() { return "test" } 0 false}) + compiler.go:433: 21: *goja.newFunc(&{0xc000347130 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(&{0xc000268c30 function(hint) { + compiler.go:433: 60: *goja.newFunc(&{0xc000347180 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.01s) +--- PASS: TestToPropertyKey (0.00s) === RUN TestPrimThisValue - compiler.go:433: 0: *goja.newFunc(&{0xc000268fa0 t function t() { + compiler.go:433: 0: *goja.newFunc(&{0xc000347860 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(&{0xc000268ff0 function() { + compiler.go:433: > 3: *goja.newFunc(&{0xc0003478b0 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(&{0xc000269040 function() { + compiler.go:433: > 17: *goja.newFunc(&{0xc000347950 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(&{0xc0002693b0 t function t() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b4000 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(&{0xc000269400 get function() { + compiler.go:433: > 7: *goja.newFunc(&{0xc0004b4050 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(&{0xc0002694a0 function() { + compiler.go:433: >> 4: *goja.newFunc(&{0xc0004b40a0 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(&{0xc000021400 NewTarget function NewTarget() { + compiler.go:433: 0: *goja.newFunc(&{0xc0004b5b80 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.01s) +--- PASS: TestNestedEnumerate (0.00s) === 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(&{0xc0002e46e0 next function() { + compiler.go:433: 9: *goja.newFunc(&{0xc0002a8be0 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(&{0xc0002e4780 return function() { + compiler.go:433: 11: *goja.newFunc(&{0xc0002a8c80 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(&{0xc0002e47d0 function() { + compiler.go:433: 17: *goja.newFunc(&{0xc0002a8cd0 function() { return iterator; } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -30096,13 +30132,13 @@ compiler.go:433: 51: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDeclareGlobalFunc (0.01s) +--- PASS: TestDeclareGlobalFunc (0.00s) === RUN TestStackOverflowError --- PASS: TestStackOverflowError (0.00s) === RUN TestStacktraceLocationThrowFromCatch --- PASS: TestStacktraceLocationThrowFromCatch (0.00s) === RUN TestErrorStackRethrow - compiler.go:433: 0: *goja.newFunc(&{0xc0002e5c70 f function f(e) { + compiler.go:433: 0: *goja.newFunc(&{0xc0002a9950 f function f(e) { throw e; } 1 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 1}) @@ -30193,7 +30229,7 @@ compiler.go:433: 41: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDestructSymbol (0.01s) +--- PASS: TestDestructSymbol (0.00s) === RUN TestAccessorFuncName compiler.go:433: 0: *goja.bindGlobal(&{[] [] [prop] [namedSym emptyStrSym anonSym o] false}) compiler.go:433: 1: goja.loadDynamicCallee(Symbol) @@ -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(&{{0xc0001255e0 id get id() {} 0 false} 1}) + compiler.go:433: 13: *goja.newMethod(&{{0xc000021810 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(&{{0xc000125950 get [anonSym]() {} 0 false} 2}) + compiler.go:433: 17: *goja.newMethod(&{{0xc000021860 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(&{{0xc0001259a0 get [namedSym]() {} 0 false} 2}) + compiler.go:433: 21: *goja.newMethod(&{{0xc0000218b0 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(&{{0xc0001259f0 get [emptyStrSym]() {} 0 false} 2}) + compiler.go:433: 25: *goja.newMethod(&{{0xc000021900 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(&{{0xc000125a40 id set id(v) {} 1 false} 1}) + compiler.go:433: 27: *goja.newMethod(&{{0xc000021950 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(&{{0xc000125a90 set [anonSym](v) {} 1 false} 2}) + compiler.go:433: 31: *goja.newMethod(&{{0xc0000219a0 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(&{{0xc000125ae0 set [namedSym](v) {} 1 false} 2}) + compiler.go:433: 35: *goja.newMethod(&{{0xc0000219f0 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(&{{0xc000125b30 set [emptyStrSym](v) {} 1 false} 2}) + compiler.go:433: 39: *goja.newMethod(&{{0xc000021a40 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({}) @@ -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(&{0xc0003020f0 function() {} 0 false}) + compiler.go:433: 12: *goja.newFunc(&{0xc000364460 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(&{0xc000302140 id function() {} 0 false}) + compiler.go:433: 14: *goja.newFunc(&{0xc0003644b0 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(&{0xc0003021e0 x function x() {} 0 false}) + compiler.go:433: 16: *goja.newFunc(&{0xc000364500 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(&{0xc000302230 function() {} 0 false}) + compiler.go:433: 20: *goja.newFunc(&{0xc000364550 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(&{0xc000302280 function() {} 0 false}) + compiler.go:433: 24: *goja.newFunc(&{0xc0003645a0 function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -30452,12 +30488,12 @@ compiler.go:433: 71: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestCoverFuncName (0.01s) +--- PASS: TestCoverFuncName (0.00s) === RUN TestAnonFuncName 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(&{0xc000302460 function() {} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc000364870 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(&{0xc000302910 function() {} 0 false}) + compiler.go:433: 3: *goja.newFunc(&{0xc000364dc0 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(&{0xc000302960 function() {} 0 false}) + compiler.go:433: 8: *goja.newFunc(&{0xc000364e10 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(&{0xc0003029b0 function() {} 0 false}) + compiler.go:433: 13: *goja.newFunc(&{0xc000364e60 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(&{0xc000302a00 function(a, b) { + compiler.go:433: 31: *goja.newFunc(&{0xc000364eb0 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.01s) +--- PASS: TestPromiseAll (0.00s) === RUN TestPromiseExport --- PASS: TestPromiseExport (0.00s) === RUN TestErrorStack @@ -30743,7 +30779,7 @@ compiler.go:433: 27: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestDestructAssignToSymbol (0.01s) +--- PASS: TestDestructAssignToSymbol (0.00s) === RUN TestToNumber compiler.go:433: 0: *goja.bindGlobal(&{[] [] [a] [] false}) compiler.go:433: 1: goja.loadDynamicCallee(assert) @@ -30893,7 +30929,7 @@ --- PASS: TestToNumber (0.00s) === RUN TestToValueNilBigInt compiler.go:433: 0: goja.loadDynamic(n) - compiler.go:433: 1: goja.loadVal({0xc000249a00}) + compiler.go:433: 1: goja.loadVal({0xc0003e43c0}) 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(&{0xc000268fa0 C class C { + compiler.go:433: 2: *goja.newClass(&{0xc0002b5180 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.08s) +--- PASS: TestImportedString (0.02s) === RUN TestStringFromUTF16 --- PASS: TestStringFromUTF16 (0.00s) === RUN TestStringBuilder @@ -31222,7 +31258,7 @@ compiler.go:433: 79: goja._saveResult({}) compiler_test.go:190: stack size: 0 compiler_test.go:191: stashAllocs: 0 ---- PASS: TestTypedArraySetDetachedBuffer (0.01s) +--- PASS: TestTypedArraySetDetachedBuffer (0.00s) === RUN TestTypedArrayDefinePropDetachedBuffer compiler.go:433: 0: *goja.bindGlobal(&{[desc obj] [] [sample] [] false}) compiler.go:433: 1: goja.resolveVar1(desc) @@ -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(&{0xc00040c910 valueOf function() { + compiler.go:433: 14: *goja.newFunc(&{0xc0002fe0f0 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(&{0xc00040c960 get function() {} 0 false}) + compiler.go:433: 165: *goja.newFunc(&{0xc0002fe140 get function() {} 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) compiler.go:433: > 1: goja._loadUndef({}) compiler.go:433: > 2: goja._ret({}) @@ -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(&{0xc00040ce10 function() { + compiler.go:433: 9: *goja.newFunc(&{0xc0002fe5f0 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(&{0xc00040ce60 function() { + compiler.go:433: 29: *goja.newFunc(&{0xc0002fe640 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(&{0xc00040ceb0 function() { + compiler.go:433: 66: *goja.newFunc(&{0xc0002fe690 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(&{0xc00040cf00 function() { + compiler.go:433: 73: *goja.newFunc(&{0xc0002fe6e0 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(&{{0xc00040cf50 get get() { return 1; } 0 false} 1}) + compiler.go:433: > 6: *goja.newMethod(&{{0xc0002fe730 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.01s) +--- PASS: TestTypedArrayDefineProperty (0.00s) === 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(&{0xc0002681e0 get function() { + compiler.go:433: 16: *goja.newFunc(&{0xc0002fe960 get function() { throw new Error("OrdinaryGet was called!"); } 0 false}) compiler.go:433: > 0: *goja.enterFuncStashless(&{0 0}) @@ -31727,7 +31763,7 @@ === RUN TestVM1 --- PASS: TestVM1 (0.00s) === RUN TestEvalVar - compiler.go:433: 0: *goja.newFunc(&{0xc0002694f0 test function test() { + compiler.go:433: 0: *goja.newFunc(&{0xc0002ffd60 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(&{0xc0002698b0 test function test(arg) { + compiler.go:433: 0: *goja.newFunc(&{0xc0002b41e0 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(&{0xc000269900 function() {return arg} 0 false}) + compiler.go:433: > 6: *goja.newFunc(&{0xc0002b4230 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 2.105s +ok github.com/dop251/goja 1.082s ? 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.013s +ok github.com/dop251/goja/file 0.004s === RUN TestFToBaseStr --- PASS: TestFToBaseStr (0.00s) === RUN TestDtostr @@ -31924,41 +31960,41 @@ === PAUSE TestDtostr/#16 === CONT TestDtostr/#00 === CONT TestDtostr/#16 -=== CONT TestDtostr/#15 -=== CONT TestDtostr/#14 -=== CONT TestDtostr/#13 -=== CONT TestDtostr/#12 -=== CONT TestDtostr/#11 -=== CONT TestDtostr/#10 -=== CONT TestDtostr/#09 -=== CONT TestDtostr/#08 === CONT TestDtostr/#07 -=== CONT TestDtostr/#06 +=== CONT TestDtostr/#08 === CONT TestDtostr/#05 === CONT TestDtostr/#04 -=== CONT TestDtostr/#03 +=== CONT TestDtostr/#10 +=== CONT TestDtostr/#11 +=== CONT TestDtostr/#09 +=== CONT TestDtostr/#06 === CONT TestDtostr/#02 === CONT TestDtostr/#01 +=== CONT TestDtostr/#12 +=== CONT TestDtostr/#15 +=== CONT TestDtostr/#14 +=== CONT TestDtostr/#13 +=== CONT TestDtostr/#03 --- PASS: TestDtostr (0.00s) --- PASS: TestDtostr/#00 (0.00s) --- PASS: TestDtostr/#16 (0.00s) - --- PASS: TestDtostr/#15 (0.00s) - --- PASS: TestDtostr/#14 (0.00s) - --- PASS: TestDtostr/#13 (0.00s) - --- PASS: TestDtostr/#12 (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/#04 (0.00s) - --- PASS: TestDtostr/#03 (0.00s) + --- PASS: TestDtostr/#10 (0.00s) + --- PASS: TestDtostr/#11 (0.00s) + --- PASS: TestDtostr/#08 (0.00s) + --- PASS: TestDtostr/#09 (0.00s) + --- PASS: TestDtostr/#06 (0.00s) --- PASS: TestDtostr/#02 (0.00s) --- PASS: TestDtostr/#01 (0.00s) + --- PASS: TestDtostr/#12 (0.00s) + --- PASS: TestDtostr/#15 (0.00s) + --- PASS: TestDtostr/#14 (0.00s) + --- PASS: TestDtostr/#13 (0.00s) + --- PASS: TestDtostr/#03 (0.00s) PASS -ok github.com/dop251/goja/ftoa 0.016s +ok github.com/dop251/goja/ftoa 0.005s ? github.com/dop251/goja/ftoa/internal/fast [no test files] === RUN TestLexer --- PASS: TestLexer (0.00s) @@ -31969,7 +32005,7 @@ === RUN TestParseFunction --- PASS: TestParseFunction (0.00s) === RUN TestParserErr ---- PASS: TestParserErr (0.01s) +--- PASS: TestParserErr (0.00s) === RUN TestParser --- PASS: TestParser (0.00s) === RUN TestParseDestruct @@ -31995,12 +32031,12 @@ === RUN TestTransformRegExp --- PASS: TestTransformRegExp (0.00s) PASS -ok github.com/dop251/goja/parser 0.023s +ok github.com/dop251/goja/parser 0.008s ? github.com/dop251/goja/token [no test files] === RUN TestString_AsUtf16 --- PASS: TestString_AsUtf16 (0.00s) PASS -ok github.com/dop251/goja/unistring 0.013s +ok github.com/dop251/goja/unistring 0.004s 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/3551624/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/3551624/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/2577820 and its subdirectories -I: Current time: Tue Oct 13 09:40:12 -12 2026 -I: pbuilder-time-stamp: 1791927612 +I: removing directory /srv/workspace/pbuilder/3551624 and its subdirectories +I: Current time: Thu Sep 11 05:20:28 +14 2025 +I: pbuilder-time-stamp: 1757517628