山本です。

あれ、でも

#include <stdio.h>

typedef __int64 VALUE;

static void hoge();

int main()
{
    hoge((VALUE)3,(VALUE)4);
}

static void hoge(VALUE i, VALUE j)
{
    printf("%d %d\n", (int)i, (int)j); /* 3 4 (bcc32) */
}

だと正しく出力されますね・・・変だな、読み違えたかな・・・
(__int64 は int より大きいので拡張後は __int64 なのか?)

すみません、該当個所は仕様書の 52 ページなので、皆さん
ご覧になってください。(ややこしくてよくわからない)