Header-to-copy ユーティリティが C ソース コード内の呼び出し規則を等価な COBOL COPY ファイル形式に翻訳する例を次に示します。
C のソース
typedef HINSTANCE HMODULE; DWORD _far _pascal GetVersion(void); UINT _far _pascal GetFreeSystemResources(UINT); #define GFSR_SYSTEMRESOURCES 0x0000 BOOL _far _pascal SetWinDebugInfo(const WINDEBUGINFO _far* <_><_>lpwdi); void _far _cdecl DebugOutput(UINT flags, LPCSTR lpsz, ...); #define WDI_OPTIONS 0x0001
生成される COBOL コード
01 HMODULE is typedef usage uns-int. end program "c-typedefs". program-id."c-typedefs" is external. special-names. call-convention pascal-convention-val is pascal-conv. $set constant GetVersion "GetVersion" entry GetVersion pascal-conv returning uns-long . $set constant GetFreeSystemResources "GetFreeSystemResources" entry GetFreeSystemResources pascal-conv using by value uns-int returning uns-int . end program "c-typedefs". program-id."c-typedefs" is external. special-names. call-convention pascal-convention-val is pascal-conv. 78 GFSR-SYSTEMRESOURCES value h"0000". end program "c-typedefs". program-id."c-typedefs" is external. special-names. call-convention pascal-convention-val is pascal-conv. $set constant SetWinDebugInfo "SetWinDebugInfo" entry SetWinDebugInfo pascal-conv using by reference windebuginfo returning int . end program "c-typedefs". program-id."c-typedefs" is external. special-names. call-convention cdecl-convention-val is cdecl-conv. $set constant DebugOutput "DebugOutput" entry DebugOutput cdecl-conv using by value uns-int by reference any by value any . end program "c-typedefs". program-id."c-typedefs" is external. special-names. call-convention cdecl-convention-val is cdecl-conv. 78 WDI-OPTIONS value h"0001". end program "c-typedefs".
H2cpy による COBOL コードの生成は、標準呼び出し規則を使用するデフォルトの外部プログラム、c_typedefs 内から開始されています。GetVersion ルーチンでは Pascal の呼び出し規則が使用されるため、H2cpy は手続き部の ENTRY 文を含む新しい外部プログラムのヘッダーを生成しています。GetFreeSystemResources ルーチンは同じ Pascal の呼び出し規則を使用します。そのため、ここでは新しいプログラム ヘッダーは生成されず、2 つ目の ENTRY 文が生成されています。続いて、データ部内に 78 レベル項目を 1 つ生成する必要があるため、H2cpy は新しいプログラム ヘッダーを生成しています。さらに、DebugOutput ルーチンでは cdecl 呼び出し規則が使用されるため、プログラム ヘッダーをもう 1 つ生成しています。