From 3e584505132e6cb161bfdd1d86d75609ebee7564 Mon Sep 17 00:00:00 2001 From: Zeev Suraski Date: Fri, 9 Apr 1999 19:09:29 +0000 Subject: * A lot of work on php_ini stuff * A lot of work on getting rid from php3_ini --- main/php.h | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'main/php.h') diff --git a/main/php.h b/main/php.h index 610c68897d..6a31d0b87a 100644 --- a/main/php.h +++ b/main/php.h @@ -475,6 +475,39 @@ extern int yylineno; #endif extern void phprestart(FILE *input_file); + +/* Finding offsets of elements within structures. + * Taken from the Apache code, which in turn, was taken from X code... + */ + +#if defined(CRAY) || (defined(__arm) && !defined(LINUX)) +#ifdef __STDC__ +#define XtOffset(p_type,field) _Offsetof(p_type,field) +#else +#ifdef CRAY2 +#define XtOffset(p_type,field) \ + (sizeof(int)*((unsigned int)&(((p_type)NULL)->field))) + +#else /* !CRAY2 */ + +#define XtOffset(p_type,field) ((unsigned int)&(((p_type)NULL)->field)) + +#endif /* !CRAY2 */ +#endif /* __STDC__ */ +#else /* ! (CRAY || __arm) */ + +#define XtOffset(p_type,field) \ + ((long) (((char *) (&(((p_type)NULL)->field))) - ((char *) NULL))) + +#endif /* !CRAY */ + +#ifdef offsetof +#define XtOffsetOf(s_type,field) offsetof(s_type,field) +#else +#define XtOffsetOf(s_type,field) XtOffset(s_type*,field) +#endif + + #endif /* -- cgit v1.2.1