diff --git a/src/global.h b/src/global.h index 8e2e058e431b5664064afd3c5a92cd35679dfd3a..246be3b8e3fda1ce16878a33f873fffe63ecda7a 100644 --- a/src/global.h +++ b/src/global.h @@ -494,7 +494,7 @@ typedef signed INT32 p_wchar2; typedef struct p_wchar_p { - p_wchar0 *ptr; + void *ptr; int shift; } PCHARP; diff --git a/src/stralloc.h b/src/stralloc.h index 076e39fb30f040dc44f8d7154eddd60780fa21e8..a67a86b22003d687ff0c77ad230350bf46875824 100644 --- a/src/stralloc.h +++ b/src/stralloc.h @@ -155,7 +155,7 @@ PMOD_EXPORT p_wchar2 index_shared_string(const struct pike_string *s, ptrdiff_t #define INDEX_PCHARP(X,Y) INDEX_CHARP((X).ptr,(Y),(X).shift) #define SET_INDEX_PCHARP(X,Y,Z) SET_INDEX_CHARP((X).ptr,(Y),(X).shift,(Z)) #define EXTRACT_PCHARP(X) INDEX_CHARP((X).ptr,(0),(X).shift) -#define INC_PCHARP(X,Y) (((X).ptr)+= SAL(Y, (X).shift)) +#define INC_PCHARP(X,Y) (((X).ptr) = ((char*)((X).ptr))+SAL(Y, (X).shift)) #define LOW_COMPARE_PCHARP(X,CMP,Y) (((char *)((X).ptr)) CMP ((char *)((Y).ptr))) #define LOW_SUBTRACT_PCHARP(X,Y) (LOW_COMPARE_PCHARP((X),-,(Y))>>(X).shift) @@ -171,7 +171,7 @@ PMOD_EXPORT p_wchar2 index_shared_string(const struct pike_string *s, ptrdiff_t static INLINE PCHARP __attribute__((unused)) MKPCHARP(const void *ptr, int shift) { PCHARP tmp; - tmp.ptr=(p_wchar0 *)ptr; + tmp.ptr=(void*)ptr; tmp.shift=shift; return tmp; }