CheckTypeSize.c.in 801 B

12345678910111213141516171819202122232425262728293031323334353637
  1. @headers@
  2. #undef KEY
  3. #if defined(__i386)
  4. # define KEY '_','_','i','3','8','6'
  5. #elif defined(__x86_64)
  6. # define KEY '_','_','x','8','6','_','6','4'
  7. #elif defined(__ppc__)
  8. # define KEY '_','_','p','p','c','_','_'
  9. #elif defined(__ppc64__)
  10. # define KEY '_','_','p','p','c','6','4','_','_'
  11. #endif
  12. #define SIZE (sizeof(@type@))
  13. char info_size[] = {'I', 'N', 'F', 'O', ':', 's','i','z','e','[',
  14. ('0' + ((SIZE / 10000)%10)),
  15. ('0' + ((SIZE / 1000)%10)),
  16. ('0' + ((SIZE / 100)%10)),
  17. ('0' + ((SIZE / 10)%10)),
  18. ('0' + (SIZE % 10)),
  19. ']',
  20. #ifdef KEY
  21. ' ','k','e','y','[', KEY, ']',
  22. #endif
  23. '\0'};
  24. #ifdef __CLASSIC_C__
  25. int main(argc, argv) int argc; char *argv[];
  26. #else
  27. int main(int argc, char *argv[])
  28. #endif
  29. {
  30. int require = 0;
  31. require += info_size[argc];
  32. (void)argv;
  33. return require;
  34. }