2004-05-26から1日間の記事一覧

モダンな可変長引数はないのか

D言語での可変長引数は非常に昔ながらの方式、void*のポインタを引き回すことで実現されている。stdarg.dを見ると typedef void* va_list; template va_start(T) { void va_start(out va_list ap, inout T parmn) { ap = cast(va_list)(cast(void*)&parmn + …

Dテンプレートの挙動不審回避

昨日の話(id:ABA:20040525#p2)の続き。 要は同時にコンパイルすれば問題無いので とのコメントをいただいたので試してみた。build.xmlを <apply executable="dmd" dir="${src}" dest="${src}" parallel="true" failonerror="true" skipemptyfilesets="true"> として同時コンパイルするようにしてみたら...まったく問題なくなった。なんてこった。コメントありがとうございまし</apply>…