1acb9e7e9Schristos#ifndef __NV_POINTER__ 2acb9e7e9Schristos#define __NV_POINTER__ 3acb9e7e9Schristos/* 4acb9e7e9Schristos * All this mess is needed because the X headers use "pointer" for two 5acb9e7e9Schristos * different purposes. Clearly this needs to be fixed there, but it is 6acb9e7e9Schristos * much more intrusive. So we include the headers in the right order to 7acb9e7e9Schristos * make the necessary magic happen. 8acb9e7e9Schristos */ 9acb9e7e9Schristos 10acb9e7e9Schristos/* This defines _XTYPEDEF_POINTER to prevent <Xdefs.h> from doing the typedef */ 11acb9e7e9Schristos#include "dix-config.h" 12acb9e7e9Schristos 13acb9e7e9Schristos/* This uses "pointer" as a union tag, so include it first */ 14acb9e7e9Schristos#include <X11/Xproto.h> 15acb9e7e9Schristos 16acb9e7e9Schristos/* Undefine _XTYPEDEF_POINTER, because we need it as a type now */ 17acb9e7e9Schristos#undef _XTYPEDEF_POINTER 18acb9e7e9Schristos 19acb9e7e9Schristos/* This defines "pointer" as a type, so include it second */ 20acb9e7e9Schristos#include <X11/Xdefs.h> 21acb9e7e9Schristos 22acb9e7e9Schristos/* not defined in Xdefs.h for xorg-server 1.20. */ 23acb9e7e9Schristos#ifndef _XTYPEDEF_POINTER 24acb9e7e9Schristostypedef void * pointer; 25acb9e7e9Schristos#define _XTYPEDEF_POINTER 26acb9e7e9Schristos#endif 27acb9e7e9Schristos 28acb9e7e9Schristos#endif 29