aiscript-dev / aiscript

🔋 A lightweight scripting language runing on JavaScript
https://aiscript-dev.github.io/aiscript/
MIT License
186 stars 33 forks source link

let false = 'hoge'がエラーにならない #773

Closed FineArchs closed 1 month ago

FineArchs commented 1 month ago

https://github.com/aiscript-dev/aiscript/actions/runs/10644756798/job/29509847385?pr=769

let true = 1
var false = 2
let null = 3

といった文がエラーにならず、素通りしてしまうバグが発生しているようです。

分割代入の都合上、パースエラーにするのは難しい面もありますが、せめてランタイムエラーは出て欲しいかも

FineArchs commented 1 month ago

あと現行のテスト(keyword.ts)だとシンタックスエラーじゃないと弾かれるのでそこの調整も必要

uzmoi commented 1 month ago

763 でここの実装ミスってるせいですね。

https://github.com/aiscript-dev/aiscript/blob/6dd60a589fe4469829fb2ac9d57e17f8c8a6b201/src/parser/plugins/validate-keyword.ts#L61-L68