tenko icon indicating copy to clipboard operation
tenko copied to clipboard

Some correctness issues

Open bakkot opened this issue 3 years ago • 2 comments

I ran a fuzzer for a while and found the following cases which are incorrectly rejected. Other than the first two they don't make sense as programs, although that's mostly because I've tried to reduce them as much as possible.

Let me know if you would prefer that I not file bugs found with a fuzzer.

async(0,...a)
export default async=null
(class extends async function(){}{})
let[{}=class{}]=null
a[{...()=>{}}.m()]
--{_:()=>null}._
(class{static get[()=>null](){}}())

bakkot avatar May 06 '21 17:05 bakkot

Hi @bakkot. I very much appreciate these tips. Thank you.

I can't promise a turn-around time for this. I assume it isn't blocking you.

But I do want to try and resolve these cases sooner or later. And if you find more I definitely don't mind you posting them here.

From the top of my head I can't remember whether an arrow is a valid spread argument. The other cases look legit at first sight. Should be interesting to figure out why Tenko rejects them anyways.

pvdz avatar May 06 '21 20:05 pvdz

I can't promise a turn-around time for this. I assume it isn't blocking you.

Yup. None of these are things I've run into in practice.

From the top of my head I can't remember whether an arrow is a valid spread argument.

It's syntactically allowed, though it's not generally something which is useful to do.

bakkot avatar May 06 '21 20:05 bakkot