REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3001
When the 64-bit version of VS compiler is used, the generated
PcdValueInit tool will be failed to compile.
This patch is going to fix that issue.
Signed-off-by: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Yuwei Chen <yuwei.chen@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Reviewed-by: Sean Brogan <sean.brogan@microsoft.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
\r
#define __FIELD_SIZE(TYPE, Field) (sizeof((TYPE *)0)->Field)\r
#define __ARRAY_ELEMENT_SIZE(TYPE, Field) (sizeof((TYPE *)0)->Field[0])\r
-#define __OFFSET_OF(TYPE, Field) ((UINT32) &(((TYPE *)0)->Field))\r
+#define __OFFSET_OF(TYPE, Field) ((UINT32)(size_t) &(((TYPE *)0)->Field))\r
#define __FLEXIBLE_SIZE(Size, TYPE, Field, MaxIndex) if (__FIELD_SIZE(TYPE, Field) == 0) Size = MAX((__OFFSET_OF(TYPE, Field) + __ARRAY_ELEMENT_SIZE(TYPE, Field) * (MaxIndex)), Size)\r
#define __ARRAY_SIZE(Array) (sizeof(Array)/sizeof(Array[0]))\r
\r