diff -r 9554ec3e27cd xen/include/public/arch-x86/xen.h --- a/xen/include/public/arch-x86/xen.h Thu Aug 30 18:53:54 2007 +0100 +++ b/xen/include/public/arch-x86/xen.h Fri Aug 31 11:38:17 2007 +0000 @@ -37,7 +37,9 @@ #endif #define DEFINE_XEN_GUEST_HANDLE(name) __DEFINE_XEN_GUEST_HANDLE(name, name) -#define XEN_GUEST_HANDLE(name) __guest_handle_ ## name +/* DEFINE_XEN_GUEST_HANDLE is evaluated twice. Do so with XEN_GUEST_HANDLE. */ +#define __XEN_GUEST_HANDLE(name) __guest_handle_ ## name +#define XEN_GUEST_HANDLE(name) __XEN_GUEST_HANDLE(name) #define set_xen_guest_handle(hnd, val) do { (hnd).p = val; } while (0) #ifdef __XEN_TOOLS__ #define get_xen_guest_handle(val, hnd) do { val = (hnd).p; } while (0)