unspecified behaviorと、undefined behaviorとは、明確に使い分けなければならない。では、用語をどうするか。unspecifiedは、未規定、undefinedは、未定義とするのが一般的だろう。
これはいい。問題は、ill-formedとwell-formedはどうすればいいのか。違法、合法では、何か違う。英単語のまま使いたいが。
// ill-formed void main() { }
あえて何か訳語を作るべきなのだろうか。あるいは、単純に、「エラー」としておいた方が分かりやすいか。
conditionally-supportedやdiagnostic messageなど、適当な単語が思いつかない。
ところで、鼻から悪魔の元ネタは、これらしい。
Why is this legal? - comp.std.c | Google Groups
Nasal Demonとも言われているらしい。文字通り、鼻悪魔。
堅い訳語は肩が凝るので、やや冗長ですが、
ReplyDeletewell-formed: 文法的に正しい
ill-formed: 文法違反
conditionally-supported: 条件付きで可能
diagnostic message: 診断メッセージ
といった風でもいいような。