From dcdb2319e2497e7b7400526f95bf7f174910d194 Mon Sep 17 00:00:00 2001
From: Per Hedbor <ph@opera.com>
Date: Thu, 28 Aug 2014 13:58:00 +0200
Subject: [PATCH] Changed PCHARP ptr to be a void*.

---
 src/global.h   | 2 +-
 src/stralloc.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/global.h b/src/global.h
index 8e2e058e43..246be3b8e3 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 076e39fb30..a67a86b220 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;
 }
-- 
GitLab