struct-layout-1_y2.h

来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C头文件 代码 · 共 70 行

H
70
字号
#undef F#undef N#undef B#undef TX#ifdef SKIP_VAconst int test_va = 0;#elseconst int test_va = 1;#endif#define F(n, x, v, w) 						\  if (p->x != arg.x) FAIL (n, 74);#define N(n, x)#define B(n, x, v, w) 						\  if (p->x != arg.x) FAIL (n, 74);#define TX(n, type, attrs, fields, ops) 			\void								\check##n##va (int z, ...)					\{								\  type S##n arg, *p;						\  va_list ap;							\  int i;							\								\  if (test_va)							\    {								\      va_start (ap, z);						\      for (i = 0; i < 5; ++i)					\	{							\	  p = NULL;						\	  switch ((z << 4) | i)					\	    {							\	    case 0x10:						\	      if (va_arg (ap, double) != 1.0)			\		FAIL (n, 70);					\	      break;						\	    case 0x12:						\	      if (va_arg (ap, long long) != 2LL)		\		FAIL (n, 71);					\	      break;						\	    case 0x22:						\	      if (va_arg (ap, long double) != 2.0L)		\		FAIL (n, 72);					\	      break;						\	    case 0x11:						\	    case 0x20:						\	    case 0x21:						\	    case 0x24:						\	      p = &s##n;					\	      arg = va_arg (ap, type S##n);			\	      break;						\	    case 0x13:						\	    case 0x14:						\	    case 0x23:						\	      p = &a##n[2];					\	      arg = va_arg (ap, type S##n);			\	      break;						\	    default:						\	      FAIL (n, 73);					\	      break;						\	    }							\	  if (p)						\	    {							\	      ops						\	    }							\	}							\      va_end (ap);						\    }								\}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?