$ go test -v -run 'Testdata/1588' . === RUN TestTestdata === RUN TestTestdata/issue-1588 testscript.go:534: WORK=$WORK PATH=/usr/lib/go/bin:/home/howl/bin:/home/howl/go/bin:/home/howl/.yarn/bin:/home/howl/.npm-packages/bin:/home/howl/go/bin:/home/howl/.yarn/bin:/home/howl/.npm-packages/bin:/home/howl/.asdf/shims:/home/howl/.local/share/asdf/bin:/home/howl/bin:/home/howl/go/bin:/home/howl/.yarn/bin:/home/howl/.npm-packages/bin:/home/howl/.cargo/bin:/home/howl/.nvm/versions/node/v16.18.0/bin:/home/howl/go/bin:/home/howl/.yarn/bin:/home/howl/.npm-packages/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/howl/py/bin:/home/howl/py/bin GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ GOCOVERDIR= exe= SID=1ad3c900 USER_SEED_test1=source bonus chronic canvas draft south burst lottery vacant surface solve popular case indicate oppose farm nothing bullet exhibit title speed wink action roast USER_ADDR_test1=g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5 USER_SEED_test2=copper patrol hundred boss split uncover churn thumb repair term slice kiwi claim such heavy opinion lens custom oblige card mix chalk cabbage apology USER_ADDR_test2=g1ukh8fgwqf6z6jdaq42culqmk9gcrxzggff03ka USER_SEED_test3=misery artefact harbor retire toast trick source drip liberty ability rate shield ecology carbon sort arrive caught develop end verb banana burst ancient veteran USER_ADDR_test3=g1j652n7pq4wj46pug88t37vh5fff00ajdqvaqds USER_SEED_test4=math young still true chief sleep wedding enlist employ birth admit arch crash lucky melt away glance angle student random dose scale sail great USER_ADDR_test4=g1sakzavnx9gwzq699ey948xfyaa42mv084mfj0n GNOROOT=/home/howl/oc/gno GNOHOME=/home/howl/throw/tmp/TestTestdata1695870077/001/gno # Reproducible Test for https://github.com/gnolang/gno/issues/1588 (2.470s) > gnoland start [stdout] node started successfully # add contract (0.826s) > gnokey maketx addpkg -pkgdir $WORK -pkgpath gno.land/r/demo/xx -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1 [stdout] OK! GAS WANTED: 2000000 GAS USED: 504785 [stderr] Enter password. > stdout OK! > gnokey maketx call -pkgpath gno.land/r/demo/xx -func Store -args 2024-01-01T10:00:00+01:00 -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1 [stdout] OK! GAS WANTED: 2000000 GAS USED: 583151 [stderr] Enter password. > stdout OK! > gnokey maketx call -pkgpath gno.land/r/demo/xx -func Read -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1 [stderr] Enter password. "gnokey" error: --= Error =-- Data: interface conversion: gnolang.Type is *gnolang.PointerType, not *gnolang.ArrayType Msg Traces: 0 /home/howl/oc/gno/tm2/pkg/crypto/keys/client/maketx.go:177 - deliver transaction failed: log:msg:0,success:false,log:--= Error =-- Data: &errors.errorString{s:"interface conversion: gnolang.Type is *gnolang.PointerType, not *gnolang.ArrayType"} Msg Traces: 0 /home/howl/oc/gno/gno.land/pkg/sdk/vm/keeper.go:279 - VM call panic: interface conversion: gnolang.Type is *gnolang.PointerType, not *gnolang.ArrayType Machine: CheckTypes: false Op: [OpHalt OpBody OpForLoop OpAddAssign OpBody OpAssign OpBody OpExec OpExec OpExec OpExec OpExec OpExec OpExec OpValueDecl OpBody OpPopBlock OpBody OpPopBlock OpIfCond OpBinary1 OpBinary1 OpPrecall OpNeq OpEval] Values: (len: 6) #5 (&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location) #4 (typeval{bool} type{}) #3 (.locabs(t time.Time)(name string,offset int,abs uint64) func()(name string,offset int,abs uint64)) #2 (.AppendFormat(t time.Time,b []uint8,layout string)( []uint8) func(b []uint8,layout string)( []uint8)) #1 (.Format(t time.Time,layout string)( string) func(layout string)( string)) #0 (Read func()( string)) Exprs: #4 (const (nil *time.zone)) #3 l.cacheZone != (const (nil *time.zone)) #2 (const-type bool)(l.cacheZone != (const (nil *time.zone))) #1 (const-type bool)(l.cacheZone != (const (nil *time.zone))) && (const-type bool)(l.cacheStart <= sec) #0 (const-type bool)(l.cacheZone != (const (nil *time.zone))) && (const-type bool)(l.cacheStart <= sec) && (const-type bool)(sec < l.cacheEnd) Stmts: #13 bodyStmt[0/0/1]=sec += (const-type int64)(offset)* #12 bodyStmt[0/0/4]=abs = (const-type uint64)(sec + (const (9223372028715321600 int64))) #11 var name, offset, abs = t.locabs() #10 var year (const-type int) = (const (-1 int)) #9 var month Month #8 var day (const-type int) #7 var yday (const-type int) #6 var hour (const-type int) = (const (-1 int)) #5 var min (const-type int) #4 var sec (const-type int) #3 bodyStmt[0/0/1]=for ; (const-type bool)(layout != (const ("" string))); { prefix, std, suffix := nextStdChunk(layout); if (const-type bool)(prefix != (const ("" string))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const-type []uint8)(prefix)...) }; if (const-type bool)(std == (const (0 int))) { break }; layout = suffix; if (const-type bool)(year < (const (0 int))) && (const-type bool)(std & (const (256 int)) != (const (0 int))) { year, month, day, yday = absDate(abs, (const (true bool))); yday++ }; if (const-type bool)(hour < (const (0 int))) && (const-type bool)(std & (const (512 int)) != (const (0 int))) { hour, min, sec = absClock(abs) }; switch std & (const (65535 int)) { case (const (276 int)): y := year; if (const-type bool)(y < (const (0 int))) { y = -y }; b = appendInt(b, y %!!(MISSING)((MISSING)const (100 int)), (const (2 int))); case (const (275 int)): b = appendInt(b, year, (const (4 int))); case (const (258 int)): b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const-type []uint8)(month.String()[:(const (3 int))])...); case (const (257 int)): m := month.String(); b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const-type []uint8)(m)...); case (const (259 int)): b = appendInt(b, (const-type int)(month), (const (0 int))); case (const (260 int)): b = appendInt(b, (const-type int)(month), (const (2 int))); case (const (262 int)): b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const-type []uint8)(absWeekday(abs).String()[:(const (3 int))])...); case (const (261 int)): s := absWeekday(abs).String(); b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const-type []uint8)(s)...); case (const (263 int)): b = appendInt(b, day, (const (0 int))); case (const (264 int)): if (const-type bool)(day < (const (10 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (32 uint8))) }; b = appendInt(b, day, (const (0 int))); case (const (265 int)): b = appendInt(b, day, (const (2 int))); case (const (266 int)): if (const-type bool)(yday < (const (100 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (32 uint8))); if (const-type bool)(yday < (const (10 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (32 uint8))) } }; b = appendInt(b, yday, (const (0 int))); case (const (267 int)): b = appendInt(b, yday, (const (3 int))); case (const (524 int)): b = appendInt(b, hour, (const (2 int))); case (const (525 int)): hr := hour %!!(MISSING)((MISSING)const (12 int)); if (const-type bool)(hr == (const (0 int))) { hr = (const (12 int)) }; b = appendInt(b, hr, (const (0 int))); case (const (526 int)): hr := hour %!!(MISSING)((MISSING)const (12 int)); if (const-type bool)(hr == (const (0 int))) { hr = (const (12 int)) }; b = appendInt(b, hr, (const (2 int))); case (const (527 int)): b = appendInt(b, min, (const (0 int))); case (const (528 int)): b = appendInt(b, min, (const (2 int))); case (const (529 int)): b = appendInt(b, sec, (const (0 int))); case (const (530 int)): b = appendInt(b, sec, (const (2 int))); case (const (533 int)): if (const-type bool)(hour >= (const (12 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (slice[0x504D] ...uint8))...) } else { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (slice[0x414D] ...uint8))...) }; case (const (534 int)): if (const-type bool)(hour >= (const (12 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (slice[0x706D] ...uint8))...) } else { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (slice[0x616D] ...uint8))...) }; case (const (24 int)), (const (27 int)), (const (25 int)), (const (26 int)), (const (28 int)), (const (29 int)), (const (32 int)), (const (30 int)), (const (31 int)), (const (33 int)): if (const-type bool)(offset == (const (0 int))) && (const-type bool)(std == (const (24 int))) || (const-type bool)(std == (const (27 int))) || (const-type bool)(std == (const (25 int))) || (const-type bool)(std == (const (26 int))) || (const-type bool)(std == (const (28 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (90 uint8))); break }; zone := offset / (const (60 int)); absoffset := offset; if (const-type bool)(zone < (const (0 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (45 uint8))); zone = -zone; absoffset = -absoffset } else { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (43 uint8))) }; b = appendInt(b, zone / (const (60 int)), (const (2 int))); if (const-type bool)(std == (const (27 int))) || (const-type bool)(std == (const (32 int))) || (const-type bool)(std == (const (28 int))) || (const-type bool)(std == (const (33 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (58 uint8))) }; if (const-type bool)(std != (const (31 int))) && (const-type bool)(std != (const (26 int))) { b = appendInt(b, zone %!!(MISSING)((MISSING)const (60 int)), (const (2 int))) }; if (const-type bool)(std == (const (25 int))) || (const-type bool)(std == (const (30 int))) || (const-type bool)(std == (const (33 int))) || (const-type bool)(std == (const (28 int))) { if (const-type bool)(std == (const (33 int))) || (const-type bool)(std == (const (28 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (58 uint8))) }; b = appendInt(b, absoffset %!!(MISSING)((MISSING)const (60 int)), (const (2 int))) }; case (const (23 int)): if (const-type bool)(name != (const ("" string))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const-type []uint8)(name)...); break }; zone := offset / (const (60 int)); if (const-type bool)(zone < (const (0 int))) { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (45 uint8))); zone = -zone } else { b = (const (append func(x []uint8,args ...uint8)(res []uint8)))(b, (const (43 uint8))) }; b = appendInt(b, zone / (const (60 int)), (const (2 int))); b = appendInt(b, zone %!!(MISSING)((MISSING)const (60 int)), (const (2 int))); case (const (34 int)), (const (35 int)): b = formatNano(b, (const-type uint)(t.Nanosecond()), std) } } #2 bodyStmt[0/0/5]=return (const-type string)(b)* #1 bodyStmt[0/0/3]=out += (const ("\n\n" string))* #0 bodyStmt[0/0/2]=return out* Blocks: @(1) Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc00ba02d20,Source:if (const-type bool)(l) loca...,Parent:0xc00bc4a780) t: (struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time) name: ( string) offset: (0 int) abs: (0 uint64) l: (&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location) sec: (1704099600 int64) (s vals) @(3) Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc009742c20,Source:func (t Time) loca...,Parent:0xc0097d1520) t: (nil time.Time) name: ( string) offset: (0 int) abs: (0 uint64) l: (nil *time.Location) sec: (0 int64) (s typs) @(3) [time.Time string int uint64 *time.Location int64] @(4) Block(ID:336074805fc853987abe6f7fe3ad97a6a6f3077a:4,Addr:0xc00bc4a780,Source:ref(time/time.gno:79),Parent:0xc00bc4a3c0) (RefNode names not shown) (s vals) @(4) Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc0097d1520,Source:file{ package time; import error...,Parent:0xc009937520) errors: (package(errors errors) package{}) (s typs) @(4) [package{}] @(5) Block(ID:336074805fc853987abe6f7fe3ad97a6a6f3077a:2,Addr:0xc00bc4a3c0,Source:ref(time/:0),Parent:%!!(MISSING)!(MISSING)p()) (RefNode names not shown) (s vals) @(5) Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc009937520,Source:package(time),Parent:%!!(MISSING)!(MISSING)p()) ParseError: (typeval{time.ParseError (0xc009942840)} type{}) Time: (typeval{time.Time (0xc009942ae0)} type{}) Location: (typeval{time.Location (0xc009942b40)} type{}) zone: (typeval{time.zone (0xc009942ba0)} type{}) zoneTrans: (typeval{time.zoneTrans (0xc009942d80)} type{}) Month: (typeval{time.Month (0xc0099432c0)} type{}) Weekday: (typeval{time.Weekday (0xc0099433e0)} type{}) Duration: (typeval{time.Duration (0xc009943500)} type{}) ruleKind: (typeval{time.ruleKind (0xc009943620)} type{}) rule: (typeval{time.rule (0xc009943740)} type{}) startsWithLowerCase: (startsWithLowerCase func(str string)( bool)) nextStdChunk: (nextStdChunk func(layout string)(prefix string,std int,suffix string)) match: (match func(s1 string,s2 string)( bool)) lookup: (lookup func(tab []string,val string)( int, string, .uverse.error)) appendInt: (appendInt func(b []uint8,x int,width int)( []uint8)) atoi: (atoi func(s string)(x int,err .uverse.error)) stdFracSecond: (stdFracSecond func(code int,n int,c int)( int)) digitsLen: (digitsLen func(std int)( int)) separator: (separator func(std int)( uint8)) formatNano: (formatNano func(b []uint8,nanosec uint,std int)( []uint8)) quote: (quote func(s string)( string)) isDigit: (isDigit func(s string,i int)( bool)) getnum: (getnum func(s string,fixed bool)( int, string, .uverse.error)) getnum3: (getnum3 func(s string,fixed bool)( int, string, .uverse.error)) cutspace: (cutspace func(s string)( string)) skip: (skip func(value string,prefix string)( string, .uverse.error)) Parse: (Parse func(layout string,value string)( time.Time, .uverse.error)) ParseInLocation: (ParseInLocation func(layout string,value string,loc *time.Location)( time.Time, .uverse.error)) parse: (parse func(layout string,value string,defaultLocation *time.Location,local *time.Location)( time.Time, .uverse.error)) parseTimeZone: (parseTimeZone func(value string)(length int,ok bool)) parseGMT: (parseGMT func(value string)( int)) parseSignedOffset: (parseSignedOffset func(value string)( int)) commaOrPeriod: (commaOrPeriod func(b uint8)( bool)) parseNanoseconds: (parseNanoseconds func(value string,nbytes int)(ns int,rangeErrString string,err .uverse.error)) leadingInt: (leadingInt func(s string)(x uint64,rem string,err .uverse.error)) leadingFraction: (leadingFraction func(s string)(x uint64,scale float64,rem string)) ParseDuration: (ParseDuration func(s string)( time.Duration, .uverse.error)) absWeekday: (absWeekday func(abs uint64)( time.Weekday)) absClock: (absClock func(abs uint64)(hour int,min int,sec int)) fmtFrac: (fmtFrac func(buf []uint8,v uint64,prec int)(nw int,nv uint64)) fmtInt: (fmtInt func(buf []uint8,v uint64)( int)) lessThanHalf: (lessThanHalf func(x time.Duration,y time.Duration)( bool)) Since: (Since func(t time.Time)( time.Duration)) Until: (Until func(t time.Time)( time.Duration)) absDate: (absDate func(abs uint64,full bool)(year int,month time.Month,day int,yday int)) daysIn: (daysIn func(m time.Month,year int)( int)) daysSinceEpoch: (daysSinceEpoch func(year int)( uint64)) now: (now func()(sec int64,nsec int32,mono int64)) runtimeNano: (runtimeNano func()( int64)) Now: (Now func()( time.Time)) unixTime: (unixTime func(sec int64,nsec int32)( time.Time)) Unix: (Unix func(sec int64,nsec int64)( time.Time)) UnixMilli: (UnixMilli func(msec int64)( time.Time)) UnixMicro: (UnixMicro func(usec int64)( time.Time)) isLeap: (isLeap func(year int)( bool)) norm: (norm func(hi int,lo int,base int)(nhi int,nlo int)) Date: (Date func(year int,month time.Month,day int,hour int,min int,sec int,nsec int,loc *time.Location)( time.Time)) div: (div func(t time.Time,d time.Duration)(qmod2 int,r time.Duration)) FixedZone: (FixedZone func(name string,offset int)( *time.Location)) tzset: (tzset func(s string,initEnd int64,sec int64)(name string,offset int,start int64,end int64,isDST bool,ok bool)) tzsetName: (tzsetName func(s string)( string, string, bool)) tzsetOffset: (tzsetOffset func(s string)(offset int,rest string,ok bool)) tzsetRule: (tzsetRule func(s string)( time.rule, string, bool)) tzsetNum: (tzsetNum func(s string,min int,max int)(num int,rest string,ok bool)) tzruleTime: (tzruleTime func(year int,r time.rule,off int)( int)) LoadLocation: (LoadLocation func(name string)( *time.Location, .uverse.error)) containsDotDot: (containsDotDot func(s string)( bool)) Layout: ("01/02 03:04:05PM '06 -0700" string) ANSIC: ("Mon Jan _2 15:04:05 2006" string) UnixDate: ("Mon Jan _2 15:04:05 MST 2006" string) RubyDate: ("Mon Jan 02 15:04:05 -0700 2006" string) RFC822: ("02 Jan 06 15:04 MST" string) RFC822Z: ("02 Jan 06 15:04 -0700" string) RFC850: ("Monday, 02-Jan-06 15:04:05 MST" string) RFC1123: ("Mon, 02 Jan 2006 15:04:05 MST" string) RFC1123Z: ("Mon, 02 Jan 2006 15:04:05 -0700" string) RFC3339: ("2006-01-02T15:04:05Z07:00" string) RFC3339Nano: ("2006-01-02T15:04:05.999999999Z07:00" string) Kitchen: ("3:04PM" string) Stamp: ("Jan _2 15:04:05" string) StampMilli: ("Jan _2 15:04:05.000" string) StampMicro: ("Jan _2 15:04:05.000000" string) StampNano: ("Jan _2 15:04:05.000000000" string) stdNeedDate: (256 bigint) stdLongMonth: (257 bigint) stdMonth: (258 bigint) stdNumMonth: (259 bigint) stdZeroMonth: (260 bigint) stdLongWeekDay: (261 bigint) stdWeekDay: (262 bigint) stdDay: (263 bigint) stdUnderDay: (264 bigint) stdZeroDay: (265 bigint) stdUnderYearDay: (266 bigint) stdZeroYearDay: (267 bigint) stdNeedClock: (512 bigint) stdHour: (524 bigint) stdHour12: (525 bigint) stdZeroHour12: (526 bigint) stdMinute: (527 bigint) stdZeroMinute: (528 bigint) stdSecond: (529 bigint) stdZeroSecond: (530 bigint) stdLongYear: (275 bigint) stdYear: (276 bigint) stdPM: (533 bigint) stdpm: (534 bigint) stdTZ: (23 bigint) stdISO8601TZ: (24 bigint) stdISO8601SecondsTZ: (25 bigint) stdISO8601ShortTZ: (26 bigint) stdISO8601ColonTZ: (27 bigint) stdISO8601ColonSecondsTZ: (28 bigint) stdNumTZ: (29 bigint) stdNumSecondsTz: (30 bigint) stdNumShortTZ: (31 bigint) stdNumColonTZ: (32 bigint) stdNumColonSecondsTZ: (33 bigint) stdFracSecond0: (34 bigint) stdFracSecond9: (35 bigint) stdArgShift: (16 bigint) stdSeparatorShift: (28 bigint) stdMask: (65535 bigint) std0x: (nil [6]int) longDayNames: (nil []string) shortDayNames: (nil []string) shortMonthNames: (nil []string) longMonthNames: (nil []string) atoiError: (undefined) errBad: (undefined) lowerhex: ("0123456789abcdef" string) runeSelf: (128 bigint) runeError: (65533 int32) errLeadingInt: (undefined) Nanosecond: (1 time.Duration) Microsecond: (1000 time.Duration) Millisecond: (1000000 time.Duration) Second: (1000000000 time.Duration) Minute: (60000000000 time.Duration) Hour: (3600000000000 time.Duration) unitMap: (nil map[string]uint64) hasMonotonic: (9223372036854775808 bigint) secondsPerMinute: (60 bigint) secondsPerHour: (3600 bigint) secondsPerDay: (86400 bigint) wallToInternal: (59453308800 int64) maxWall: (68043243391 int64) minWall: (59453308800 int64) nsecMask: (1073741823 bigint) nsecShift: (30 bigint) January: (1 time.Month) February: (2 time.Month) March: (3 time.Month) April: (4 time.Month) May: (5 time.Month) June: (6 time.Month) July: (7 time.Month) August: (8 time.Month) September: (9 time.Month) October: (10 time.Month) November: (11 time.Month) December: (12 time.Month) Sunday: (0 time.Weekday) Monday: (1 time.Weekday) Tuesday: (2 time.Weekday) Wednesday: (3 time.Weekday) Thursday: (4 time.Weekday) Friday: (5 time.Weekday) Saturday: (6 time.Weekday) absoluteZeroYear: (-292277022399 bigint) internalYear: (1 bigint) absoluteToInternal: (-9223371966579724800 int64) internalToAbsolute: (9223371966579724800 int64) unixToInternal: (62135596800 int64) internalToUnix: (-62135596800 int64) minDuration: (-9223372036854775808 time.Duration) maxDuration: (9223372036854775807 time.Duration) secondsPerWeek: (604800 bigint) daysPer400Years: (146097 bigint) daysPer100Years: (36524 bigint) daysPer4Years: (1461 bigint) daysBefore: (nil [13]int32) startNano: (0 int64) timeBinaryVersionV1: (1 uint8) timeBinaryVersionV2: (2 uint8) alpha: (-9223372036854775808 bigint) omega: (9223372036854775807 bigint) utcLoc: (nil time.Location) UTC: (nil *time.Location) localLoc: (undefined) Local: (nil *time.Location) ruleJulian: (0 time.ruleKind) ruleDOY: (1 time.ruleKind) ruleMonthWeekDay: (2 time.ruleKind) errLocation: (undefined) zoneinfo: (undefined) (s typs) @(5) [type{} type{} type{} type{} type{} type{} type{} type{} type{} type{} func(str string)( bool) func(layout string)(prefix string,std int,suffix string) func(s1 string,s2 string)( bool) func(tab []string,val string)( int, string, .uverse.error) func(b []uint8,x int,width int)( []uint8) func(s string)(x int,err .uverse.error) func(code int,n int,c int)( int) func(std int)( int) func(std int)( uint8) func(b []uint8,nanosec uint,std int)( []uint8) func(s string)( string) func(s string,i int)( bool) func(s string,fixed bool)( int, string, .uverse.error) func(s string,fixed bool)( int, string, .uverse.error) func(s string)( string) func(value string,prefix string)( string, .uverse.error) func(layout string,value string)( time.Time, .uverse.error) func(layout string,value string,loc *time.Location)( time.Time, .uverse.error) func(layout string,value string,defaultLocation *time.Location,local *time.Location)( time.Time, .uverse.error) func(value string)(length int,ok bool) func(value string)( int) func(value string)( int) func(b uint8)( bool) func(value string,nbytes int)(ns int,rangeErrString string,err .uverse.error) func(s string)(x uint64,rem string,err .uverse.error) func(s string)(x uint64,scale float64,rem string) func(s string)( time.Duration, .uverse.error) func(abs uint64)( time.Weekday) func(abs uint64)(hour int,min int,sec int) func(buf []uint8,v uint64,prec int)(nw int,nv uint64) func(buf []uint8,v uint64)( int) func(x time.Duration,y time.Duration)( bool) func(t time.Time)( time.Duration) func(t time.Time)( time.Duration) func(abs uint64,full bool)(year int,month time.Month,day int,yday int) func(m time.Month,year int)( int) func(year int)( uint64) func()(sec int64,nsec int32,mono int64) func()( int64) func()( time.Time) func(sec int64,nsec int32)( time.Time) func(sec int64,nsec int64)( time.Time) func(msec int64)( time.Time) func(usec int64)( time.Time) func(year int)( bool) func(hi int,lo int,base int)(nhi int,nlo int) func(year int,month time.Month,day int,hour int,min int,sec int,nsec int,loc *time.Location)( time.Time) func(t time.Time,d time.Duration)(qmod2 int,r time.Duration) func(name string,offset int)( *time.Location) func(s string,initEnd int64,sec int64)(name string,offset int,start int64,end int64,isDST bool,ok bool) func(s string)( string, string, bool) func(s string)(offset int,rest string,ok bool) func(s string)( time.rule, string, bool) func(s string,min int,max int)(num int,rest string,ok bool) func(year int,r time.rule,off int)( int) func(name string)( *time.Location, .uverse.error) func(s string)( bool) string string string string string string string string string string string string string string string string bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint bigint [6]int []string []string []string []string .uverse.error .uverse.error string bigint int32 .uverse.error time.Duration time.Duration time.Duration time.Duration time.Duration time.Duration map[string]uint64 bigint bigint bigint bigint int64 int64 int64 bigint bigint time.Month time.Month time.Month time.Month time.Month time.Month time.Month time.Month time.Month time.Month time.Month time.Month time.Weekday time.Weekday time.Weekday time.Weekday time.Weekday time.Weekday time.Weekday bigint bigint int64 int64 int64 int64 time.Duration time.Duration bigint bigint bigint bigint [13]int32 int64 uint8 uint8 bigint bigint time.Location *time.Location time.Location *time.Location time.ruleKind time.ruleKind time.ruleKind .uverse.error *string] Blocks (other): #6 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc00ba02b40,Source:if (const-type bool)(l) loca...,Parent:0xc00bc4a780) t: (struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time) name: ( string) offset: (0 int) abs: (0 uint64) l: (&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location) sec: (1704099600 int64) (static) #5 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc009742c20,Source:func (t Time) loca...,Parent:0xc0097d1520) t: (nil time.Time) name: ( string) offset: (0 int) abs: (0 uint64) l: (nil *time.Location) sec: (0 int64) #4 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc00bc4b0e0,Source:func (t Time) Appe...,Parent:0xc00bc4a5a0) t: (struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time) b: (slice[0x] []uint8) layout: ("2006-01-02T15:04:05Z07:00" string) .res_0: (nil []uint8) name: (undefined) offset: (undefined) abs: (undefined) year: (undefined) month: (undefined) day: (undefined) yday: (undefined) hour: (undefined) min: (undefined) sec: (undefined) (static) #4 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc009465020,Source:func (t Time) Appe...,Parent:0xc00969a620) t: (nil time.Time) b: (nil []uint8) layout: ( string) .res_0: (nil []uint8) name: ( string) offset: (0 int) abs: (0 uint64) year: (0 int) month: (undefined) day: (undefined) yday: (undefined) hour: (0 int) min: (undefined) sec: (undefined) #3 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc00bc4ab40,Source:func (t Time) Form...,Parent:0xc00bc4a5a0) t: (struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time) layout: ("2006-01-02T15:04:05Z07:00" string) .res_0: ( string) bufSize: (64 bigint) b: (slice[0x] []uint8) max: (35 int) (static) #3 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc009464c20,Source:func (t Time) Form...,Parent:0xc00969a620) t: (nil time.Time) layout: ( string) .res_0: ( string) bufSize: (64 bigint) b: (undefined) max: (0 int) #2 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc0097094a0,Source:for i := (const (0...,Parent:0xc0097092c0) i: (0 int) rawPost: (&(struct{(struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time)} gno.land/r/demo/xx.Post) *gno.land/r/demo/xx.Post) post: (&(struct{(struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time)} gno.land/r/demo/xx.Post) *gno.land/r/demo/xx.Post) (static) #2 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc00bc3c320,Source:for i := (const (0...,Parent:0xc005e71c20) i: (0 int) rawPost: (undefined) post: (nil *gno.land/r/demo/xx.Post) #1 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc0097092c0,Source:func Read() (const-type string)...,Parent:0xc0097085a0) .res_0: ( string) out: ("" string) (static) #1 Block(ID:0000000000000000000000000000000000000000:0,Addr:0xc005e71c20,Source:func Read() (const-type string)...,Parent:0xc00bc3d520) .res_0: ( string) out: ( string) Frames: #4 [FRAME FUNC:locabs RECV:(struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time) (0 args) 15/3/0/12/5 LASTPKG:time LASTRLM:Realm{Path:"gno.land/r/demo/xx",Time:12}#A0251C714DCD7B19C41DB3E1F57C91E5416FEE33] #3 [FRAME FUNC:AppendFormat RECV:(struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time) (2 args) 6/2/0/3/4 LASTPKG:time LASTRLM:Realm{Path:"gno.land/r/demo/xx",Time:12}#A0251C714DCD7B19C41DB3E1F57C91E5416FEE33] #2 [FRAME FUNC:Format RECV:(struct{(0 uint64),(63839696400 int64),(&(struct{( string),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:9)] []time.zone),(slice[ref(a0251c714dcd7b19c41db3e1f57c91e5416fee33:11)] []time.zoneTrans),( string),(-9223372036854775808 int64),(9223372036854775807 int64),(& *time.zone)} time.Location) *time.Location)} time.Time) (1 args) 4/1/0/2/3 LASTPKG:gno.land/r/demo/xx LASTRLM:Realm{Path:"gno.land/r/demo/xx",Time:12}#A0251C714DCD7B19C41DB3E1F57C91E5416FEE33] #1 [FRAME LABEL: 2/1/0/1/2] #0 [FRAME FUNC:Read RECV:(undefined) (0 args) 1/0/0/0/1 LASTPKG:main LASTRLM:Realm(nil)] Realm: gno.land/r/demo/xx Exceptions: [] Stack Trace: 0 /home/howl/oc/gno/tm2/pkg/errors/errors.go:20 1 /home/howl/oc/gno/gno.land/pkg/sdk/vm/keeper.go:279 2 /usr/lib/go/src/runtime/panic.go:914 3 /usr/lib/go/src/runtime/iface.go:263 4 /usr/lib/go/src/runtime/iface.go:273 5 /home/howl/oc/gno/gnovm/pkg/gnolang/values.go:2536 6 /home/howl/oc/gno/gnovm/pkg/gnolang/values.go:463 7 /home/howl/oc/gno/gnovm/pkg/gnolang/values.go:459 8 /home/howl/oc/gno/gnovm/pkg/gnolang/values.go:1715 9 /home/howl/oc/gno/gnovm/pkg/gnolang/op_expressions.go:81 10 /home/howl/oc/gno/gnovm/pkg/gnolang/machine.go:1260 11 /home/howl/oc/gno/gnovm/pkg/gnolang/machine.go:711 12 /home/howl/oc/gno/gno.land/pkg/sdk/vm/keeper.go:285 13 /home/howl/oc/gno/gno.land/pkg/sdk/vm/handler.go:66 14 /home/howl/oc/gno/gno.land/pkg/sdk/vm/handler.go:29 15 /home/howl/oc/gno/tm2/pkg/sdk/baseapp.go:650 16 /home/howl/oc/gno/tm2/pkg/sdk/baseapp.go:829 17 /home/howl/oc/gno/tm2/pkg/sdk/baseapp.go:586 18 /home/howl/oc/gno/tm2/pkg/bft/abci/client/local_client.go:82 19 /home/howl/oc/gno/tm2/pkg/bft/proxy/app_conn.go:73 20 /home/howl/oc/gno/tm2/pkg/bft/state/execution.go:254 21 /home/howl/oc/gno/tm2/pkg/bft/state/execution.go:103 22 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:1348 23 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:1276 24 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:1222 25 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:1253 26 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:1638 27 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:1484 28 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:692 29 /home/howl/oc/gno/tm2/pkg/bft/consensus/state.go:651 30 /usr/lib/go/src/runtime/asm_amd64.s:1650 --= /Error =-- ,events:[] --= /Error =-- FAIL: testdata/issue-1588.txtar:12: unexpected "gnokey" command failure: interface conversion: gnolang.Type is *gnolang.PointerType, not *gnolang.ArrayType --- FAIL: TestTestdata (4.18s) --- FAIL: TestTestdata/issue-1588 (4.18s) FAIL FAIL github.com/gnolang/gno/gno.land/cmd/gnoland 4.249s FAIL