+extern Lisp_Object Vfontset_alias_alist;
+extern Lisp_Object Vglobal_fontset_alist;
+
+
+/* Return an immutable id for font_info FONT_INFO on frame F. The
+ reason for this macro is hat one cannot hold pointers to font_info
+ structures in other data structures, because the table is
+ reallocated in x_list_fonts. */
+
+#define FONT_INFO_ID(F, FONT_INFO) \
+ (FONT_INFO) - (FRAME_X_DISPLAY_INFO ((F))->font_table)
+
+/* Given a font_info id ID, return a pointer to the font_info
+ structure on frame F. If ID is invalid, return null. */
+
+#define FONT_INFO_FROM_ID(F, ID) \
+ (((ID) >= 0 && (ID) < FRAME_X_DISPLAY_INFO ((F))->font_table_size) \
+ ? (FRAME_X_DISPLAY_INFO ((F))->font_table + (ID)) \
+ : 0)
+