VOS C entry v.s. argc/argv2008年02月13日 11時07分43秒

VOS の C 言語では、プログラムの開始関数は、main に縛られてはいない。bind 時に任意に指定することも出来る。bind 時に entry が指定されていないで、main 関数が一つの時にはそちらが、entry として扱われる。

VOS 本来のコマンドオプションの引き取り方は、s$parse_command() による物だが、一般的な、UNIX 系の C 言語の様に argc/argv を用いることも出来る。

しかし、この argc/argv は entry が暗示的に main で指定されている時には使えない様だ。bind の entry が指定されると、bind が失敗し実行形式プログラムが作れない。entry が指定されると、以下の様なエラーがでる。


bind: Warning: The main entrypoint "display_stdin" of object module
     "echo" has arguments.

何処にも記述されていないので、何故 display_stdin(int argc, char *argv[]) がいけないのか理解するのに時間を喰ってしまった。