this patch adds the inline definition for win32 with msvc++ - for ms compiler: inline is c++, __inline is ms exension for c - inline functions called from another source file don't work w/o extern
w/o that extern in rx.h the msvc++ can't link and gcc does it with or w/o... josh's patch [josh-006.patch] should be applied to remove my last patch (and that ugly ssize_t) Index: parrot.h =================================================================== RCS file: /cvs/public/parrot/include/parrot/parrot.h,v retrieving revision 1.26 diff -u -r1.26 parrot.h --- parrot.h 18 Feb 2002 08:26:10 -0000 1.26 +++ parrot.h 18 Feb 2002 20:54:40 -0000 @@ -87,6 +87,8 @@ #else #ifdef __GNUC__ #define INLINE __inline__ + #elif defined _MSC_VER + #define INLINE __inline #else #define INLINE #endif Index: rx.h =================================================================== RCS file: /cvs/public/parrot/include/parrot/rx.h,v retrieving revision 1.11 diff -u -r1.11 rx.h --- rx.h 18 Feb 2002 08:26:10 -0000 1.11 +++ rx.h 18 Feb 2002 20:54:41 -0000 @@ -69,10 +69,10 @@ rxinfo * rx_allocate_info(struct Parrot_Interp *, STRING *); -INLINE BOOLVAL rx_is_word_character(struct Parrot_Interp *, INTVAL ch); -INLINE BOOLVAL rx_is_number_character(struct Parrot_Interp *, INTVAL ch); -INLINE BOOLVAL rx_is_whitespace_character(struct Parrot_Interp *, INTVAL ch); -INLINE BOOLVAL rx_is_newline(struct Parrot_Interp *, INTVAL ch); +extern INLINE BOOLVAL rx_is_word_character(struct Parrot_Interp *, INTVAL ch); +extern INLINE BOOLVAL rx_is_number_character(struct Parrot_Interp *, INTVAL ch); +extern INLINE BOOLVAL rx_is_whitespace_character(struct Parrot_Interp *, INTVAL ch); +extern INLINE BOOLVAL rx_is_newline(struct Parrot_Interp *, INTVAL ch); Bitmap bitmap_make(struct Parrot_Interp *, STRING*); Bitmap bitmap_make_cstr(struct Parrot_Interp *, const char*);