Header-to-copy ユーティリティは、文字列と連結演算子 (# および ##) を使用して引数付きマクロを展開します。例えば、次の #define 指令では、
#define DECLARE_HANDLE32(name) struct name##__ { int unused; }; \ typedef const struct name##__ _far* name
このマクロ定義自体は 78 レベル項目には変換されませんが、同じ C ヘッダー内で次のマクロが見つかると、
DECLARE_HANDLE32(HHOOK);
H2cpyは C の規則に従ってそのマクロを展開し、対応する COBOL コードを生成します。COBOL ではデータ ポインターと手続きポインターを区別する場合を除き、ポインターの型を指定できません。
01 HHOOK-- is typedef. 02 unused usage int. 01 HHOOK is typedef usage data-pointer.