tinycc x86 platform __fastcall bug.
#include <stdio.h>
void __fastcall go(double d)
{
printf("go fastcall: %f\n", d);
}
void __cdecl go2(double d)
{
printf("go cdecl: %f\n", d);
}
void __fastcall gof(float d)
{
printf("go fastcall float: %f\n", d);
}
void __fastcall golong(__int64 n)
{
printf("go fastcall int64: 0x%016I64X\n", n);
}
int main(int argc, char * argv[])
{
double pi = 3.14;
go(pi);
go2(pi);
gof((float)pi);
golong(0x1234567812345678UL);
return 0;
}