List:Commits« Previous MessageNext Message »
From:ahristov Date:February 23 2007 2:56pm
Subject:PHP mysqlnd svn commit: r61 - trunk/ext/mysqli/mysqlnd
View as plain text  
Author: ahristov
Date: 2007-02-23 15:56:37 +0100 (Fri, 23 Feb 2007)
New Revision: 61

Modified:
   trunk/ext/mysqli/mysqlnd/portability.h
Log:
Whitespace and other fixes, will save us some
headache on Win64


Modified: trunk/ext/mysqli/mysqlnd/portability.h
===================================================================
--- trunk/ext/mysqli/mysqlnd/portability.h	2007-02-23 11:31:06 UTC (rev 60)
+++ trunk/ext/mysqli/mysqlnd/portability.h	2007-02-23 14:56:37 UTC (rev 61)
@@ -1,6 +1,14 @@
 /* Copyright Abandoned 1996 TCX DataKonsult AB & Monty Program KB & Detron HB 
 This file is public domain and comes with NO WARRANTY of any kind */
 
+/*
+  Parts of the original, which are not applicable to mysqlnd have been removed.
+  
+  With small modifications, mostly casting but adding few more macros by
+  Andrey Hristov <andrey@stripped> . The additions are in the public domain and
+  were added to improve the header file, to get it more consistent.
+*/
+
 #ifndef __attribute
 #if !defined(__GNUC__)
 #define __attribute(A)
@@ -25,13 +33,13 @@
 
 
 #if SIZEOF_LONG_LONG > 4 && !defined(_LONG_LONG)
-#define _LONG_LONG 1		/* For AIX string library */
+#define _LONG_LONG 1        /* For AIX string library */
 #endif
 
 
 /* Go around some bugs in different OS and compilers */
 #if defined(_HPUX_SOURCE) && defined(HAVE_SYS_STREAM_H)
-#include <sys/stream.h>		/* HPUX 10.20 defines ulong here. UGLY !!! */
+#include <sys/stream.h>        /* HPUX 10.20 defines ulong here. UGLY !!! */
 #define HAVE_ULONG
 #endif
 
@@ -39,7 +47,7 @@
 /* Some defines of functions for portability */
 
 #ifndef HAVE_ATOD
-#define atod		atof
+#define atod        atof
 #endif
 
 
@@ -48,78 +56,79 @@
 #endif
 
 #if defined(HAVE_LONG_LONG) && !defined(LONGLONG_MIN)
-#define LONGLONG_MIN	((long long) 0x8000000000000000LL)
-#define LONGLONG_MAX	((long long) 0x7FFFFFFFFFFFFFFFLL)
+#define LONGLONG_MIN    ((long long) 0x8000000000000000LL)
+#define LONGLONG_MAX    ((long long) 0x7FFFFFFFFFFFFFFFLL)
 #endif
 
 #if SIZEOF_LONG == 4
-#define INT_MIN32	(long) 0x80000000L
-#define INT_MAX32	(long) 0x7FFFFFFFL
-#define INT_MIN24	((long) 0xff800000L)
-#define INT_MAX24	0x007fffffL
-#define INT_MIN16	((short int) 0x8000)
-#define INT_MAX16	0x7FFF
-#define INT_MIN8	((char) 0x80)
-#define INT_MAX8	((char) 0x7F)
+#define INT_MIN32    (long) 0x80000000L
+#define INT_MAX32    (long) 0x7FFFFFFFL
+#define INT_MIN24    ((long) 0xff800000L)
+#define INT_MAX24    0x007fffffL
+#define INT_MIN16    ((short int) 0x8000)
+#define INT_MAX16    0x7FFF
+#define INT_MIN8    ((char) 0x80)
+#define INT_MAX8    ((char) 0x7F)
 #else  /* Probably Alpha */
-#define INT_MIN32	((long) (int) 0x80000000)
-#define INT_MAX32	((long) (int) 0x7FFFFFFF)
-#define INT_MIN24	((long) (int) 0xff800000)
-#define INT_MAX24	((long) (int) 0x007fffff)
-#define INT_MIN16	((short int) 0xffff8000)
-#define INT_MAX16	((short int) 0x00007FFF)
+#define INT_MIN32    ((long) (int) 0x80000000)
+#define INT_MAX32    ((long) (int) 0x7FFFFFFF)
+#define INT_MIN24    ((long) (int) 0xff800000)
+#define INT_MAX24    ((long) (int) 0x007fffff)
+#define INT_MIN16    ((short int) 0xffff8000)
+#define INT_MAX16    ((short int) 0x00007FFF)
 #endif
 
 
 /* Typdefs for easyier portability */
 
 #ifndef HAVE_INT_8_16_32
-typedef char	int8;		/* Signed integer >= 8	bits */
-typedef short	int16;		/* Signed integer >= 16 bits */
+typedef char    int8;        /* Signed integer >= 8    bits */
+typedef short    int16;        /* Signed integer >= 16 bits */
 #endif
 #ifndef HAVE_UCHAR
-typedef unsigned char	uchar;	/* Short for unsigned char */
+typedef unsigned char    uchar;    /* Short for unsigned char */
 #endif
-typedef unsigned char	uint8;	/* Short for unsigned integer >= 8  bits */
-typedef unsigned short	uint16; /* Short for unsigned integer >= 16 bits */
+typedef unsigned char    uint8;    /* Short for unsigned integer >= 8  bits */
+typedef unsigned short    uint16; /* Short for unsigned integer >= 16 bits */
 
 #if SIZEOF_INT == 4
 #ifndef HAVE_INT_8_16_32
-typedef int		int32;
+typedef int        int32;
 #endif
-typedef unsigned int	uint32; /* Short for unsigned integer >= 32 bits */
+typedef unsigned int    uint32; /* Short for unsigned integer >= 32 bits */
 #elif SIZEOF_LONG == 4
 #ifndef HAVE_INT_8_16_32
-typedef long		int32;
+typedef long        int32;
 #endif
-typedef unsigned long	uint32; /* Short for unsigned integer >= 32 bits */
+typedef unsigned long    uint32; /* Short for unsigned integer >= 32 bits */
 #else
 error "Neither int or long is of 4 bytes width"
 #endif
 
 #if !defined(HAVE_ULONG) && !defined(__USE_MISC)
-typedef unsigned long	ulong;	/* Short for unsigned long */
+typedef unsigned long    ulong;    /* Short for unsigned long */
 #endif
 #ifndef longlong_defined
 #if defined(HAVE_LONG_LONG) && SIZEOF_LONG != 8
 typedef unsigned long long int ulonglong; /* ulong or unsigned long long */
 typedef long long int longlong;
 #else
-typedef unsigned long	ulonglong;	/* ulong or unsigned long long */
-typedef long		longlong;
+typedef unsigned long    ulonglong;    /* ulong or unsigned long long */
+typedef long        longlong;
 #endif
 #endif
 
 
-
+#if A0
 #ifndef byte_defined
-typedef char		byte;	/* Smallest addressable unit */
+typedef char        byte;    /* Smallest addressable unit */
 #endif
+#endif
 
-	/* Macros for converting *constants* to the right type */
-#define INT8(v)		(int8) (v)
-#define INT16(v)	(int16) (v)
-#define INT32(v)	(int32) (v)
+    /* Macros for converting *constants* to the right type */
+#define INT8(v)      (int8) (v)
+#define INT16(v)    (int16) (v)
+#define INT32(v)    (int32) (v)
 
 
 
@@ -130,201 +139,210 @@
 
 /* Optimized store functions for Intel x86, non-valid for WIN64 */
 #if defined(__i386__) && !defined(_WIN64)
-#define sint2korr(A)	(*((int16 *) (A)))
-#define sint3korr(A)	((int32) ((((uchar) (A)[2]) & 128) ? \
-				  (((uint32) 255L << 24) | \
-				   (((uint32) (uchar) (A)[2]) << 16) |\
-				   (((uint32) (uchar) (A)[1]) << 8) | \
-				   ((uint32) (uchar) (A)[0])) : \
-				  (((uint32) (uchar) (A)[2]) << 16) |\
-				  (((uint32) (uchar) (A)[1]) << 8) | \
-				  ((uint32) (uchar) (A)[0])))
-#define sint4korr(A)	(*((long *) (A)))
-#define uint2korr(A)	(*((uint16 *) (A)))
-#define uint3korr(A)	(uint32) (((uint32) ((uchar) (A)[0])) +\
-				  (((uint32) ((uchar) (A)[1])) << 8) +\
-				  (((uint32) ((uchar) (A)[2])) << 16))
-#define uint4korr(A)	(*((unsigned long *) (A)))
-#define uint5korr(A)	((ulonglong)(((uint32) ((uchar) (A)[0])) +\
-				    (((uint32) ((uchar) (A)[1])) << 8) +\
-				    (((uint32) ((uchar) (A)[2])) << 16) +\
-				    (((uint32) ((uchar) (A)[3])) << 24)) +\
-			 	    (((ulonglong) ((uchar) (A)[4])) << 32))
+#define sint2korr(A)    (*((int16 *) (A)))
+#define sint3korr(A)    ((int32) ((((uchar) (A)[2]) & 128) ? \
+                  (((uint32) 255L << 24) | \
+                   (((uint32) (uchar) (A)[2]) << 16) |\
+                   (((uint32) (uchar) (A)[1]) << 8) | \
+                    ((uint32) (uchar) (A)[0])) : \
+                   (((uint32) (uchar) (A)[2]) << 16) |\
+                   (((uint32) (uchar) (A)[1]) << 8) | \
+                    ((uint32) (uchar) (A)[0])))
+#define sint4korr(A)  (*((long *) (A)))
+#define uint2korr(A)  (*((uint16 *) (A)))
+#define uint3korr(A)  (uint32) (((uint32) ((uchar) (A)[0])) +\
+                               (((uint32) ((uchar) (A)[1])) << 8) +\
+                               (((uint32) ((uchar) (A)[2])) << 16))
+#define uint4korr(A)  (*((unsigned long *) (A)))
+#define uint5korr(A)  ((ulonglong)(((uint32) ((uchar) (A)[0])) +\
+                                  (((uint32) ((uchar) (A)[1])) << 8) +\
+                                  (((uint32) ((uchar) (A)[2])) << 16) +\
+                                  (((uint32) ((uchar) (A)[3])) << 24)) +\
+                               (((ulonglong) ((uchar) (A)[4])) << 32))
 /* From Andrey Hristov, based on uint5korr() */
-#define uint6korr(A)	((ulonglong)(((uint32) ((uchar) (A)[0])) +\
-				    (((uint32) ((uchar) (A)[1])) << 8) +\
-				    (((uint32) ((uchar) (A)[2])) << 16) +\
-				    (((uint32) ((uchar) (A)[3])) << 24)) +\
-				    (((ulonglong) ((uchar) (A)[4])) << 32)) +\
-			 	    (((ulonglong) ((uchar) (A)[5])) << 40))
-#define uint8korr(A)	(*((ulonglong *) (A)))
-#define sint8korr(A)	(*((longlong *) (A)))
-#define int2store(T,A)	*((uint16*) (T))= (uint16) (A)
-#define int3store(T,A)		{ *(T)=  (uchar) ((A));\
-				  *(T+1)=(uchar) (((uint) (A) >> 8));\
-				  *(T+2)=(uchar) (((A) >> 16)); }
-#define int4store(T,A)	*((long *) (T))= (long) (A)
-#define int5store(T,A)	{ *(T)= (uchar)((A));\
-			  *((T)+1)=(uchar) (((A) >> 8));\
-			  *((T)+2)=(uchar) (((A) >> 16));\
-			  *((T)+3)=(uchar) (((A) >> 24)); \
-			  *((T)+4)=(uchar) (((A) >> 32)); }
+#define uint6korr(A)  ((ulonglong)(((uint32) ((uchar) (A)[0])) +\
+                                  (((uint32) ((uchar) (A)[1])) << 8) +\
+                                  (((uint32) ((uchar) (A)[2])) << 16) +\
+                                  (((uint32) ((uchar) (A)[3])) << 24)) +\
+                                  (((ulonglong) ((uchar) (A)[4])) << 32)) +\
+                                  (((ulonglong) ((uchar) (A)[5])) << 40))
+#define uint8korr(A)    (*((ulonglong *) (A)))
+#define sint8korr(A)    (*((longlong *) (A)))
+#define int2store(T,A)    *((uint16*) (T))= (uint16) (A)
+#define int3store(T,A)   { \
+                  *(T)=  (uchar) ((A));\
+                  *(T+1)=(uchar) (((uint) (A) >> 8));\
+                  *(T+2)=(uchar) (((A) >> 16)); }
+#define int4store(T,A)    *((long *) (T))= (long) (A)
+#define int5store(T,A)    { \
+              *((uchar *)(T))= (uchar)((A));\
+              *(((uchar *)(T))+1)=(uchar) (((A) >> 8));\
+              *(((uchar *)(T))+2)=(uchar) (((A) >> 16));\
+              *(((uchar *)(T))+3)=(uchar) (((A) >> 24)); \
+              *(((uchar *)(T))+4)=(uchar) (((A) >> 32)); }
 
 /* From Andrey Hristov, based on int5store() */
-#define int6store(T,A)	{ *(T)= (uchar)((A));\
-			  *((T)+1)=(uchar) (((A) >> 8));\
-			  *((T)+2)=(uchar) (((A) >> 16));\
-			  *((T)+3)=(uchar) (((A) >> 24)); \
-			  *((T)+4)=(uchar) (((A) >> 32)); \
-			  *((T)+5)=(uchar) (((A) >> 40)); }
+#define int6store(T,A)    { \
+              *(((uchar *)(T)))= (uchar)((A));\
+              *(((uchar *)(T))+1))=(uchar) (((A) >> 8));\
+              *(((uchar *)(T))+2))=(uchar) (((A) >> 16));\
+              *(((uchar *)(T))+3))=(uchar) (((A) >> 24)); \
+              *(((uchar *)(T))+4))=(uchar) (((A) >> 32)); \
+              *(((uchar *)(T))+5))=(uchar) (((A) >> 40)); }
 
-#define int8store(T,A)	*((ulonglong *) (T))= (ulonglong) (A)
+#define int8store(T,A)    *((ulonglong *) (T))= (ulonglong) (A)
 
 typedef union {
   double v;
   long m[2];
 } doubleget_union;
-#define doubleget(V,M)	{ ((doubleget_union *)&V)->m[0] = *((long*) M); \
-			  ((doubleget_union *)&V)->m[1] = *(((long*) M)+1); }
-#define doublestore(T,V) { *((long *) T) = ((doubleget_union *)&V)->m[0]; \
-			   *(((long *) T)+1) = ((doubleget_union *)&V)->m[1]; }
+#define doubleget(V,M)    { ((doubleget_union *)&(V))->m[0] = *((long*) (M)); \
+                            ((doubleget_union *)&(V))->m[1] = *(((long*) (M))+1);
}
+#define doublestore(T,V) { *((long *) (T))     = ((doubleget_union *)&(V))->m[0];
\
+                           *(((long *) (T))+1) = ((doubleget_union *)&(V))->m[1];
}
 #define float4get(V,M) { *((float *) &(V)) = *((float*) (M)); }
 #define float8get(V,M) doubleget((V),(M))
 /* From Andrey Hristov based on doubleget */
-#define floatget(V,M)    memcpy((byte*) &V,(byte*) (M),sizeof(float))
-#define floatstore		float4store
-#define float4store(V,M) memcpy((byte*) V,(byte*) (&M),sizeof(float))
+#define floatget(V,M)    memcpy((char*) &(V),(char*) (M),sizeof(float))
+#define floatstore       float4store
+#define float4store(V,M) memcpy((char*) (V),(char*) (&M),sizeof(float))
 #define float8store(V,M) doublestore((V),(M))
 #endif /* __i386__ */ 
 
 #ifndef sint2korr
-#define sint2korr(A)	(int16) (((int16) ((uchar) (A)[0])) +\
-				 ((int16) ((int16) (A)[1]) << 8))
-#define sint3korr(A)	((int32) ((((uchar) (A)[2]) & 128) ? \
-				  (((uint32) 255L << 24) | \
-				   (((uint32) (uchar) (A)[2]) << 16) |\
-				   (((uint32) (uchar) (A)[1]) << 8) | \
-				   ((uint32) (uchar) (A)[0])) : \
-				  (((uint32) (uchar) (A)[2]) << 16) |\
-				  (((uint32) (uchar) (A)[1]) << 8) | \
-				  ((uint32) (uchar) (A)[0])))
-#define sint4korr(A)	(int32) (((int32) ((uchar) (A)[0])) +\
-				(((int32) ((uchar) (A)[1]) << 8)) +\
-				(((int32) ((uchar) (A)[2]) << 16)) +\
-				(((int32) ((int16) (A)[3]) << 24)))
-#define sint8korr(A)	(longlong) uint8korr(A)
-#define uint2korr(A)	(uint16) (((uint16) ((uchar) (A)[0])) +\
-				  ((uint16) ((uchar) (A)[1]) << 8))
-#define uint3korr(A)	(uint32) (((uint32) ((uchar) (A)[0])) +\
-				  (((uint32) ((uchar) (A)[1])) << 8) +\
-				  (((uint32) ((uchar) (A)[2])) << 16))
-#define uint4korr(A)	(uint32) (((uint32) ((uchar) (A)[0])) +\
-				  (((uint32) ((uchar) (A)[1])) << 8) +\
-				  (((uint32) ((uchar) (A)[2])) << 16) +\
-				  (((uint32) ((uchar) (A)[3])) << 24))
-#define uint5korr(A)	((ulonglong)(((uint32) ((uchar) (A)[0])) +\
-				    (((uint32) ((uchar) (A)[1])) << 8) +\
-				    (((uint32) ((uchar) (A)[2])) << 16) +\
-				    (((uint32) ((uchar) (A)[3])) << 24)) +\
-			 	    (((ulonglong) ((uchar) (A)[4])) << 32))
+#define sint2korr(A)    (int16) (((int16) ((uchar) (A)[0])) +\
+                                 ((int16) ((int16) (A)[1]) << 8))
+#define sint3korr(A)    ((int32) ((((uchar) (A)[2]) & 128) ? \
+                  (((uint32) 255L << 24) | \
+                  (((uint32) (uchar) (A)[2]) << 16) |\
+                  (((uint32) (uchar) (A)[1]) << 8) | \
+                   ((uint32) (uchar) (A)[0])) : \
+                  (((uint32) (uchar) (A)[2]) << 16) |\
+                  (((uint32) (uchar) (A)[1]) << 8) | \
+                  ((uint32) (uchar) (A)[0])))
+#define sint4korr(A)  (int32) (((int32) ((uchar) (A)[0])) +\
+                              (((int32) ((uchar) (A)[1]) << 8)) +\
+                              (((int32) ((uchar) (A)[2]) << 16)) +\
+                              (((int32) ((int16) (A)[3]) << 24)))
+#define sint8korr(A)  (longlong) uint8korr(A)
+#define uint2korr(A)  (uint16) (((uint16) ((uchar) (A)[0])) +\
+                               ((uint16) ((uchar) (A)[1]) << 8))
+#define uint3korr(A)  (uint32) (((uint32) ((uchar) (A)[0])) +\
+                               (((uint32) ((uchar) (A)[1])) << 8) +\
+                               (((uint32) ((uchar) (A)[2])) << 16))
+#define uint4korr(A)  (uint32) (((uint32) ((uchar) (A)[0])) +\
+                               (((uint32) ((uchar) (A)[1])) << 8) +\
+                               (((uint32) ((uchar) (A)[2])) << 16) +\
+                               (((uint32) ((uchar) (A)[3])) << 24))
+#define uint5korr(A)  ((ulonglong)(((uint32) ((uchar) (A)[0])) +\
+                                  (((uint32) ((uchar) (A)[1])) << 8) +\
+                                  (((uint32) ((uchar) (A)[2])) << 16) +\
+                                  (((uint32) ((uchar) (A)[3])) << 24)) +\
+                               (((ulonglong) ((uchar) (A)[4])) << 32))
 /* From Andrey Hristov, based on uint5korr */
-#define uint6korr(A)	((ulonglong)(((uint32) ((uchar) (A)[0])) +\
-				    (((uint32) ((uchar) (A)[1])) << 8) +\
-				    (((uint32) ((uchar) (A)[2])) << 16) +\
-				    (((uint32) ((uchar) (A)[3])) << 24)) +\
-				    (((ulonglong) ((uchar) (A)[4])) << 32)) +\
-			 	    (((ulonglong) ((uchar) (A)[5])) << 40))
-#define uint8korr(A)	((ulonglong)(((uint32) ((uchar) (A)[0])) +\
-				    (((uint32) ((uchar) (A)[1])) << 8) +\
-				    (((uint32) ((uchar) (A)[2])) << 16) +\
-				    (((uint32) ((uchar) (A)[3])) << 24)) +\
-			(((ulonglong) (((uint32) ((uchar) (A)[4])) +\
-				    (((uint32) ((uchar) (A)[5])) << 8) +\
-				    (((uint32) ((uchar) (A)[6])) << 16) +\
-				    (((uint32) ((uchar) (A)[7])) << 24))) <<\
-			 	    32))
-#define int2store(T,A)		{ uint def_temp= (uint) (A) ;\
-				  *((uchar*) (T))=  (uchar)(def_temp); \
-				  *((uchar*) (T+1))=(uchar)((def_temp >> 8)); }
-#define int3store(T,A)		{ /*lint -save -e734 */\
-				  *((T))=(char) ((A));\
-				  *((T)+1)=(char) (((A) >> 8));\
-				  *((T)+2)=(char) (((A) >> 16)); \
-				  /*lint -restore */}
-#define int4store(T,A)		do { *(T)=(char) ((A));\
-				  *((T)+1)=(char) (((A) >> 8));\
-				  *((T)+2)=(char) (((A) >> 16));\
-				  *((T)+3)=(char) (((A) >> 24)); } while (0)
-#define int5store(T,A)		{ *(T)=((A));\
-				  *((T)+1)=(((A) >> 8));\
-				  *((T)+2)=(((A) >> 16));\
-				  *((T)+3)=(((A) >> 24)); \
-				  *((T)+4)=(((A) >> 32)); }
+#define uint6korr(A)  ((ulonglong)(((uint32) ((uchar) (A)[0])) +\
+                                  (((uint32) ((uchar) (A)[1])) << 8) +\
+                                  (((uint32) ((uchar) (A)[2])) << 16) +\
+                                  (((uint32) ((uchar) (A)[3])) << 24)) +\
+                                  (((ulonglong) ((uchar) (A)[4])) << 32)) +\
+                                  (((ulonglong) ((uchar) (A)[5])) << 40))
+#define uint8korr(A)  ((ulonglong)(((uint32) ((uchar) (A)[0])) +\
+                                  (((uint32) ((uchar) (A)[1])) << 8) +\
+                                  (((uint32) ((uchar) (A)[2])) << 16) +\
+                                  (((uint32) ((uchar) (A)[3])) << 24)) +\
+                                  (((ulonglong) (((uint32) ((uchar) (A)[4])) +\
+                                  (((uint32) ((uchar) (A)[5])) << 8) +\
+                                  (((uint32) ((uchar) (A)[6])) << 16) +\
+                                  (((uint32) ((uchar) (A)[7])) << 24))) <<
32))
+#define int2store(T,A)  do { uint def_temp= (uint) (A) ;\
+                  *((uchar*) (T))  =  (uchar)(def_temp); \
+                  *((uchar*) (T+1)) = (uchar)((def_temp >> 8)); } while (0)
+#define int3store(T,A)  do { /*lint -save -e734 */\
+                  *(((char *)(T)))   = (char) ((A));\
+                  *(((char *)(T))+1) = (char) (((A) >> 8));\
+                  *(((char *)(T))+2) = (char) (((A) >> 16)); \
+                  /*lint -restore */} while (0)
+#define int4store(T,A)  do { \
+                  *(((char *)(T)))   = (char) ((A));\
+                  *(((char *)(T))+1) = (char) (((A) >> 8));\
+                  *(((char *)(T))+2) = (char) (((A) >> 16));\
+                  *(((char *)(T))+3) = (char) (((A) >> 24)); } while (0)
+#define int5store(T,A)  do { \
+                  *(((char *)(T)))   = (char)((A));\
+                  *(((char *)(T))+1) = (char)(((A) >> 8));\
+                  *(((char *)(T))+2) = (char)(((A) >> 16));\
+                  *(((char *)(T))+3) = (char)(((A) >> 24)); \
+                  *(((char *)(T))+4) = (char)(((A) >> 32)); } while (0)
 /* Based on int5store() from Andrey Hristov */
-#define int6store(T,A)		{ *(T)=((A));\
-				  *((T)+1)=(((A) >> 8));\
-				  *((T)+2)=(((A) >> 16));\
-				  *((T)+3)=(((A) >> 24)); \
-				  *((T)+4)=(((A) >> 32)); \
-				  *((T)+5)=(((A) >> 40)); }
-#define int8store(T,A)		{ uint def_temp= (uint) (A), def_temp2= (uint) ((A) >> 32);
\
-				  int4store((T),def_temp); \
-				  int4store((T+4),def_temp2); \
-				}
+#define int6store(T,A)  do { \
+                  *(((char *)(T)))   = (char)((A));\
+                  *(((char *)(T))+1) = (char)(((A) >> 8));\
+                  *(((char *)(T))+2) = (char)(((A) >> 16));\
+                  *(((char *)(T))+3) = (char)(((A) >> 24)); \
+                  *(((char *)(T))+4) = (char)(((A) >> 32)); \
+                  *(((char *)(T))+5) = (char)(((A) >> 40)); } while (0)
+#define int8store(T,A)        { uint def_temp= (uint) (A), def_temp2= (uint) ((A)
>> 32); \
+                  int4store((T),def_temp); \
+                  int4store((T+4),def_temp2); \
+                }
 #ifdef WORDS_BIGENDIAN
-#define float4store(T,A)    { *(T)= ((byte *) &A)[3];\
-                              *((T)+1)=(char) ((byte *) &A)[2];\
-                              *((T)+2)=(char) ((byte *) &A)[1];\
-                              *((T)+3)=(char) ((byte *) &A)[0]; }
+#define float4store(T,A) do { \
+                          *(((char *)(T)))   = (char) ((char *) &A)[3];\
+                          *(((char *)(T))+1) = (char) ((char *) &A)[2];\
+                          *(((char *)(T))+2) = (char) ((char *) &A)[1];\
+                          *(((char *)(T))+3) = (char) ((char *) &A)[0]; } while (0)
 
-#define float4get(V,M)      { float def_temp;\
-                              ((byte*) &def_temp)[0]=(M)[3];\
-                              ((byte*) &def_temp)[1]=(M)[2];\
-                              ((byte*) &def_temp)[2]=(M)[1];\
-                              ((byte*) &def_temp)[3]=(M)[0];\
-                              (V)=def_temp; }
-#define float8store(T,V)    { *(T)= ((byte *) &V)[7];\
-                              *((T)+1)=(char) ((byte *) &V)[6];\
-                              *((T)+2)=(char) ((byte *) &V)[5];\
-                              *((T)+3)=(char) ((byte *) &V)[4];\
-                              *((T)+4)=(char) ((byte *) &V)[3];\
-                              *((T)+5)=(char) ((byte *) &V)[2];\
-                              *((T)+6)=(char) ((byte *) &V)[1];\
-                              *((T)+7)=(char) ((byte *) &V)[0]; }
+#define float4get(V,M)   do { float def_temp;\
+                          ((char*) &def_temp)[0] = (M)[3];\
+                          ((char*) &def_temp)[1] = (M)[2];\
+                          ((char*) &def_temp)[2] = (M)[1];\
+                          ((char*) &def_temp)[3] = (M)[0];\
+                          (V)=def_temp; } while (0)
+#define float8store(T,V)  do { \
+                           *(((char *)(T)))   = (char) ((char *) &(V))[7];\
+                           *(((char *)(T))+1) = (char) ((char *) &(V))[6];\
+                           *(((char *)(T))+2) = (char) ((char *) &(V))[5];\
+                           *(((char *)(T))+3) = (char) ((char *) &(V))[4];\
+                           *(((char *)(T))+4) = (char) ((char *) &(V))[3];\
+                           *(((char *)(T))+5) = (char) ((char *) &(V))[2];\
+                           *(((char *)(T))+6) = (char) ((char *) &(V))[1];\
+                           *(((char *)(T))+7) = (char) ((char *) &(V))[0]; } while
(0)
 
-#define float8get(V,M)	    { double def_temp;\
-                              ((byte*) &def_temp)[0]=(M)[7];\
-                              ((byte*) &def_temp)[1]=(M)[6];\
-                              ((byte*) &def_temp)[2]=(M)[5];\
-                              ((byte*) &def_temp)[3]=(M)[4];\
-                              ((byte*) &def_temp)[4]=(M)[3];\
-                              ((byte*) &def_temp)[5]=(M)[2];\
-                              ((byte*) &def_temp)[6]=(M)[1];\
-                              ((byte*) &def_temp)[7]=(M)[0];\
-			      (V) = def_temp; }
+#define float8get(V,M)   do { double def_temp;\
+                          ((char*) &def_temp)[0] = (M)[7];\
+                          ((char*) &def_temp)[1] = (M)[6];\
+                          ((char*) &def_temp)[2] = (M)[5];\
+                          ((char*) &def_temp)[3] = (M)[4];\
+                          ((char*) &def_temp)[4] = (M)[3];\
+                          ((char*) &def_temp)[5] = (M)[2];\
+                          ((char*) &def_temp)[6] = (M)[1];\
+                          ((char*) &def_temp)[7] = (M)[0];\
+                          (V) = def_temp; \
+                         } while (0)
 #else
-#define float4get(V,M)   memcpy((byte*) &V,(byte*) (M),sizeof(float))
-#define float4store(V,M) memcpy((byte*) V,(byte*) (&M),sizeof(float))
+#define float4get(V,M)   memcpy((char*) &(V),(char*) (M),sizeof(float))
+#define float4store(V,M) memcpy((char*) (V),(char*) (&M),sizeof(float))
 
 #if defined(__FLOAT_WORD_ORDER) && (__FLOAT_WORD_ORDER == __BIG_ENDIAN)
-#define doublestore(T,V)    { *(T)= ((byte *) &V)[4];\
-                              *((T)+1)=(char) ((byte *) &V)[5];\
-                              *((T)+2)=(char) ((byte *) &V)[6];\
-                              *((T)+3)=(char) ((byte *) &V)[7];\
-                              *((T)+4)=(char) ((byte *) &V)[0];\
-                              *((T)+5)=(char) ((byte *) &V)[1];\
-                              *((T)+6)=(char) ((byte *) &V)[2];\
-                              *((T)+7)=(char) ((byte *) &V)[3]; }
-#define doubleget(V,M) { double def_temp;\
-                              ((byte*) &def_temp)[0]=(M)[4];\
-                              ((byte*) &def_temp)[1]=(M)[5];\
-                              ((byte*) &def_temp)[2]=(M)[6];\
-                              ((byte*) &def_temp)[3]=(M)[7];\
-                              ((byte*) &def_temp)[4]=(M)[0];\
-                              ((byte*) &def_temp)[5]=(M)[1];\
-                              ((byte*) &def_temp)[6]=(M)[2];\
-                              ((byte*) &def_temp)[7]=(M)[3];\
-			      (V) = def_temp; }
+#define doublestore(T,V)  do { \
+                         *(((char *)(T)))= ((char *) &(V))[4];\
+                         *(((char *)(T))+1)=(char) ((char *) &(V))[5];\
+                         *(((char *)(T))+2)=(char) ((char *) &(V))[6];\
+                         *(((char *)(T))+3)=(char) ((char *) &(V))[7];\
+                         *(((char *)(T))+4)=(char) ((char *) &(V))[0];\
+                         *(((char *)(T))+5)=(char) ((char *) &(V))[1];\
+                         *(((char *)(T))+6)=(char) ((char *) &(V))[2];\
+                         *(((char *)(T))+7)=(char) ((char *) &(V))[3];} while (0)
+#define doubleget(V,M) do { double def_temp;\
+                         ((char*) &def_temp)[0]=(M)[4];\
+                         ((char*) &def_temp)[1]=(M)[5];\
+                         ((char*) &def_temp)[2]=(M)[6];\
+                         ((char*) &def_temp)[3]=(M)[7];\
+                         ((char*) &def_temp)[4]=(M)[0];\
+                         ((char*) &def_temp)[5]=(M)[1];\
+                         ((char*) &def_temp)[6]=(M)[2];\
+                         ((char*) &def_temp)[7]=(M)[3];\
+                         (V) = def_temp; } while (0)
 #endif /* __FLOAT_WORD_ORDER */
 
 #define float8get(V,M)   doubleget((V),(M))
@@ -339,49 +357,51 @@
 
 #ifdef WORDS_BIGENDIAN
 
-#define ushortget(V,M)	{ V = (uint16) (((uint16) ((uchar) (M)[1]))+\
-					((uint16) ((uint16) (M)[0]) << 8)); }
-#define shortget(V,M)	{ V = (short) (((short) ((uchar) (M)[1]))+\
-				       ((short) ((short) (M)[0]) << 8)); }
-#define longget(V,M)	{ int32 def_temp;\
-			  ((byte*) &def_temp)[0]=(M)[0];\
-			  ((byte*) &def_temp)[1]=(M)[1];\
-			  ((byte*) &def_temp)[2]=(M)[2];\
-			  ((byte*) &def_temp)[3]=(M)[3];\
-			    (V)=def_temp; }
-#define ulongget(V,M)	{ uint32 def_temp;\
-			  ((byte*) &def_temp)[0]=(M)[0];\
-			  ((byte*) &def_temp)[1]=(M)[1];\
-			  ((byte*) &def_temp)[2]=(M)[2];\
-			  ((byte*) &def_temp)[3]=(M)[3];\
-			    (V)=def_temp; }
-#define shortstore(T,A) { uint def_temp=(uint) (A) ;\
-			  *(T+1)=(char)(def_temp); \
-			  *(T+0)=(char)(def_temp >> 8); }
-#define longstore(T,A)	{ *((T)+3)=((A));\
-			  *((T)+2)=(((A) >> 8));\
-			  *((T)+1)=(((A) >> 16));\
-			  *((T)+0)=(((A) >> 24)); }
+#define ushortget(V,M)  { V = (uint16) (((uint16) ((uchar) (M)[1]))+\
+                                        ((uint16) ((uint16) (M)[0]) << 8)); }
+#define shortget(V,M)   { V = (short) (((short) ((uchar) (M)[1]))+\
+                                       ((short) ((short) (M)[0]) << 8)); }
+#define longget(V,M)    do { int32 def_temp;\
+              ((char*) &def_temp)[0]=(M)[0];\
+              ((char*) &def_temp)[1]=(M)[1];\
+              ((char*) &def_temp)[2]=(M)[2];\
+              ((char*) &def_temp)[3]=(M)[3];\
+              (V)=def_temp; } while (0)
+#define ulongget(V,M)    do { uint32 def_temp;\
+              ((char*) &def_temp)[0]=(M)[0];\
+              ((char*) &def_temp)[1]=(M)[1];\
+              ((char*) &def_temp)[2]=(M)[2];\
+              ((char*) &def_temp)[3]=(M)[3];\
+              (V)=def_temp; }  while (0)
+#define shortstore(T,A) do { \
+              uint def_temp=(uint) (A) ;\
+              *(((char *)(T))+1)=(char)(def_temp); \
+              *(((char *)(T))+0)=(char)(def_temp >> 8); } while (0)
+#define longstore(T,A)  do { \
+              *(((char *)(T))+3)=(char)((A));\
+              *(((char *)(T))+2)=(char)(((A) >> 8));\
+              *(((char *)(T))+1)=(char)(((A) >> 16));\
+              *(((char *)(T))+0)=(char)(((A) >> 24)); }  while (0)
 
-#define doubleget(V,M)	 memcpy((byte*) &V,(byte*) (M),sizeof(double))
-#define doublestore(T,V) memcpy((byte*) (T),(byte*) &V,sizeof(double))
-#define longlongget(V,M) memcpy((byte*) &V,(byte*) (M),sizeof(ulonglong))
-#define longlongstore(T,V) memcpy((byte*) (T),(byte*) &V,sizeof(ulonglong))
+#define doubleget(V,M)     memcpy((char*) &(V),(char*) (M),sizeof(double))
+#define doublestore(T,V) memcpy((char*) (T),(char*) &(V),sizeof(double))
+#define longlongget(V,M) memcpy((char*) &(V),(char*) (M),sizeof(ulonglong))
+#define longlongstore(T,V) memcpy((char*) (T),(char*) &(V),sizeof(ulonglong))
 
 #else
 
-#define ushortget(V,M)	{ V = uint2korr(M); }
-#define shortget(V,M)	{ V = sint2korr(M); }
-#define longget(V,M)	{ V = sint4korr(M); }
-#define ulongget(V,M)   { V = uint4korr(M); }
-#define shortstore(T,V) int2store(T,V)
-#define longstore(T,V)	int4store(T,V)
+#define ushortget(V,M)  { V = uint2korr((M)); }
+#define shortget(V,M)   { V = sint2korr((M)); }
+#define longget(V,M)    { V = sint4korr((M)); }
+#define ulongget(V,M)   { V = uint4korr((M)); }
+#define shortstore(T,V)   int2store((T),(V))
+#define longstore(T,V)    int4store((T),(V))
 #ifndef doubleget
-#define doubleget(V,M)	 memcpy((byte*) &V,(byte*) (M),sizeof(double))
-#define doublestore(T,V) memcpy((byte*) (T),(byte*) &V,sizeof(double))
+#define doubleget(V,M)    memcpy((char*) &(V),(char*) (M),sizeof(double))
+#define doublestore(T,V)  memcpy((char*) (T),(char*) &(V),sizeof(double))
 #endif /* doubleget */
-#define longlongget(V,M) memcpy((byte*) &V,(byte*) (M),sizeof(ulonglong))
-#define longlongstore(T,V) memcpy((byte*) (T),(byte*) &V,sizeof(ulonglong))
+#define longlongget(V,M)   memcpy((char*) &(V),(char*) (M),sizeof(ulonglong))
+#define longlongstore(T,V) memcpy((char*) (T),(char*) &(V),sizeof(ulonglong))
 
 #endif /* WORDS_BIGENDIAN */
 

Thread
PHP mysqlnd svn commit: r61 - trunk/ext/mysqli/mysqlndahristov23 Feb