Scm_FindBinding 手続き

見直してみる事に。
ココによれば引数 symbol の束縛を以下の順で探索との事。

  • 引数 module から探す
  • 引数 module の imported 属性が指すリストの各要素の親モジュールのリストから探す
  • 引数 module の親モジュールのリストから探す

ちょっとへろへろなので、一番単純なケイスから確認。一番単純なのは以下?

  • そのいち
    • Scm_HashTableRef 手続きの戻りがなんであれ、引数 flag が 0x1 と & して 0 になる場合 (!stay_in_module が真)
      • このケイスでは Scm_HashTableRef 手続きの戻りを SCM_GLOCP マクロに渡した結果が偽だった場合は NULL が戻る
      • そうで無い場合には、上記の Scm_HashTableRef 手続きの戻りを SCM_GLOC マクロに渡した値が戻る

本当? (を
コメントには_最初に引数で指定された (意訳) module から探索_とある。あと、(!stay_in_module) な状態というのは引数の flags 正にが 0 (末端ビットが 0) という事になりますかそうですか。
ポイント高いのは以降のはず。