@@ -56,7 +56,7 @@
TYPE_SAFE(unsigned long, mfn);
#define PRI_mfn "05lx"
-#define INVALID_MFN ((const mfn_t){ ~0UL })
+#define INVALID_MFN _mfn(~0UL)
#ifndef mfn_t
#define mfn_t /* Grep fodder: mfn_t, _mfn() and mfn_x() are defined above */
@@ -89,7 +89,7 @@ static inline bool_t mfn_eq(mfn_t x, mfn_t y)
TYPE_SAFE(unsigned long, gfn);
#define PRI_gfn "05lx"
-#define INVALID_GFN ((const gfn_t){ ~0UL })
+#define INVALID_GFN _gfn(~0UL)
#ifndef gfn_t
#define gfn_t /* Grep fodder: gfn_t, _gfn() and gfn_x() are defined above */
This reverts commit 725039d39ef10c6e3c59ba4a2511188281133b19. The change was intended to solve compilation when using INVALID_{G,M}FN for global variables. However, due to a compiler bug this will not work for GCC up to 5.0 (see [1]). [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64856 Signed-off-by: Julien Grall <julien.grall@arm.com> --- xen/include/xen/mm.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)