「なでしこv1」開発掲示板

なでしこv1のバグや要望を書き込む掲示板

(#1111) 再修正。 - U D (2009-08-29 14:03) /中 確認待ち
命令の引数を文字列から整数に変換したときエラーが起きないように修正。 (r189)(@357)

関係ない所を修正していたので、もう一回コミット。
# なんかDelphiのデバッガがちゃんと変数の値を更新してくれていなかったのか、
# 激しく勘違いしてしまいました、すみません。なんでだろう・・・

ひとまず、整数に変換した時だけで型を保持するようにして、様子を見る。

@今回の変更(メモ)

・なでしこは、AddFuncでシステム命令を登録している
 例)
 AddFunc  ('NOT',    '{整数}A',     291, sys_not,     'A=0のとき1を違えば0を返す','NOT');
・この'{整数}A'の{整数}部分のように型指定をしてあると、
 構文木から命令を実行する際に型チェック&キャストする
・ところがこのとき、型名(VType)を変更していない?
 →今回の修正では、この型名をきちんと「整数(varInt)」に変更するようにした
・型名が変わっていないまま実行すると、再び「文字列→整数」のように変換しようとする
 →実際には既に整数型に変換されているので、ここでエラーが起きていた

以上、何かおかしかったら指摘してください。
問題ないようであれば、他の型(文字列など)のキャストにも同様の修正を加えます。
文字列での乱数初期化で読み込み違反が起.. / 99yen (2009-08-19 09:48) (#1088)/ 低 未処理
  キャストに失敗。関数定義にバグ / U D (2009-08-28 23:53) (#1103)/ 低 修正中
  修正。 / U D (2009-08-29 00:38) (#1108)/ 低 確認待ち
  再修正。 / U D (2009-08-29 14:03) (#1111)/ 中 確認待ち
    RE:再修正。 / クジラ飛行机 (2009-08-30 15:04) (#1127)/ 中 解決

(#1111)へ返信する:

👆お手数ですが、いたずら防止のために、「真夏」の読み方を記入してください。

編集時に使うキーを入力(省略可能)

画像ファイル(最大300KB)を添付可能