IDLの文法はC++をもとにしていますが、C++にはない以下の制限があります。
関数の復帰値の型指定を必ず指定しなければなりません。
オペレーション宣言の各パラメタには、名前を定義しなければなりません。
空のパラメタリストの代わりに、voidを使用することはできません。
構造型(構造体、弁別情報付き共用体、列挙型)にはタグが必要です。
整数は明示的にshortかlongを宣言しなければなりません。intや unsignedなどを定義できません。
charにsignedまたはunsignedのキーワードを付けることはできません。