待辦事項 #39729

変数名の長さの上限について About upper limit of variable name length

啟用日期: 2019-11-06 16:07 最後更新: 2023-07-29 00:15

回報者:
(匿名)
負責人:
(無)
類型:
狀態:
開啟
元件:
里程碑:
(無)
優先權:
5 - 中
嚴重程度:
5 - 中
處理結果:
檔案:
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

細節

Teratermマクロの変数ははじめの31文字で認識しているようで、変数名の長さが31文字以上になると以降の変数名を変えても同じ変数として認識される事象を見つけました。

; variable of 31 characters
s23456789_123456789_123456789_1 = 'hoge'

; variable of over 31 characters
s23456789_123456789_123456789_123456 = 'fuga'

; displays 'fuga' instead of 'hoge'
messagebox s23456789_123456789_123456789_1 'test'

ドキュメントに記載がなかったため、バグかと思い報告させていただきました。

チケットを追えていないため既出でしたらすいません。できれば、変数は31文字までと記載していただけるだけでも助かります。

Ticket History (3/5 Histories)

2019-11-06 16:07 Updated by: None
  • New Ticket "変数名の長さの上限について About upper limit of variable name length" created
2023-06-17 01:06 Updated by: zmatsuo
  • 元件 Update from (無) to Tera Term Macro
2023-06-17 11:23 Updated by: nmaya
評語

問題1

ドキュメントには「最大長は32文字」とあるが、31文字までしか使えない。

ttmdef.h
#define MaxNameLen (LONG)32

問題2

32文字以上の変数名を使用した場合「指定された変数名の31文字目までの変数」として扱われる。

変数名のパース時に、31文字まで解析して打ち切るだけではなく、打ち切った時点で続く文字があったら syntax error となるのがベストと思われるが、可能なのか?

2023-07-29 00:15 Updated by: nmaya
評語
  • 4-stable
  • trunk

Attachment File List

No attachments

編輯

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » 登入