exa: Clean up warnings
Declare GC ops/funcs as const. Use 'typeof' in the 'swap' macro to capture the right type. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
parent
6e51645b47
commit
00438c9f94
|
@ -620,8 +620,8 @@ exaCreateGC(GCPtr pGC)
|
|||
|
||||
swap(pExaScr, pScreen, CreateGC);
|
||||
if ((ret = (*pScreen->CreateGC) (pGC))) {
|
||||
wrap(pExaGC, pGC, funcs, (GCFuncs *) &exaGCFuncs);
|
||||
wrap(pExaGC, pGC, ops, (GCOps *) &exaOps);
|
||||
wrap(pExaGC, pGC, funcs, &exaGCFuncs);
|
||||
wrap(pExaGC, pGC, ops, &exaOps);
|
||||
}
|
||||
swap(pExaScr, pScreen, CreateGC);
|
||||
|
||||
|
|
|
@ -248,11 +248,19 @@ extern DevPrivateKeyRec exaScreenPrivateKeyRec;
|
|||
real->mem = priv->Saved##mem; \
|
||||
}
|
||||
|
||||
#ifdef HAVE_TYPEOF
|
||||
#define swap(priv, real, mem) {\
|
||||
typeof(real->mem) tmp = priv->Saved##mem; \
|
||||
priv->Saved##mem = real->mem; \
|
||||
real->mem = tmp; \
|
||||
}
|
||||
#else
|
||||
#define swap(priv, real, mem) {\
|
||||
void *tmp = priv->Saved##mem; \
|
||||
priv->Saved##mem = real->mem; \
|
||||
real->mem = tmp; \
|
||||
}
|
||||
#endif
|
||||
|
||||
#define EXA_PRE_FALLBACK(_screen_) \
|
||||
ExaScreenPriv(_screen_); \
|
||||
|
@ -333,8 +341,8 @@ typedef struct {
|
|||
|
||||
typedef struct {
|
||||
/* GC values from the layer below. */
|
||||
GCOps *Savedops;
|
||||
GCFuncs *Savedfuncs;
|
||||
const GCOps *Savedops;
|
||||
const GCFuncs *Savedfuncs;
|
||||
} ExaGCPrivRec, *ExaGCPrivPtr;
|
||||
|
||||
typedef struct {
|
||||
|
|
Loading…
Reference in New Issue
Block a user