summaryrefslogtreecommitdiff
path: root/ruby.h
diff options
context:
space:
mode:
Diffstat (limited to 'ruby.h')
-rw-r--r--ruby.h37
1 files changed, 23 insertions, 14 deletions
diff --git a/ruby.h b/ruby.h
index ca97ee2c42..d9e3460684 100644
--- a/ruby.h
+++ b/ruby.h
@@ -164,6 +164,7 @@ VALUE rb_uint2inum _((unsigned long));
#define T_MATCH 0x23
#define T_SYMBOL 0x24
+#define T_BLKTAG 0x3b
#define T_UNDEF 0x3c
#define T_VARMAP 0x3d
#define T_SCOPE 0x3e
@@ -541,13 +542,13 @@ EXTERN VALUE rb_eNameError;
EXTERN VALUE rb_eSyntaxError;
EXTERN VALUE rb_eLoadError;
-#if defined(__GNUC__) && __GNUC__ >= 2 && !defined(RUBY_NO_INLINE)
-extern __inline__ VALUE rb_class_of _((VALUE));
-extern __inline__ int rb_type _((VALUE));
-extern __inline__ int rb_special_const_p _((VALUE));
-
-extern __inline__ VALUE
+static inline VALUE
+#if defined(__cplusplus)
rb_class_of(VALUE obj)
+#else
+rb_class_of(obj)
+ VALUE obj;
+#endif
{
if (FIXNUM_P(obj)) return rb_cFixnum;
if (obj == Qnil) return rb_cNilClass;
@@ -558,8 +559,13 @@ rb_class_of(VALUE obj)
return RBASIC(obj)->klass;
}
-extern __inline__ int
+static inline int
+#if defined(__cplusplus)
rb_type(VALUE obj)
+#else
+rb_type(obj)
+ VALUE obj;
+#endif
{
if (FIXNUM_P(obj)) return T_FIXNUM;
if (obj == Qnil) return T_NIL;
@@ -570,19 +576,18 @@ rb_type(VALUE obj)
return BUILTIN_TYPE(obj);
}
-extern __inline__ int
+static inline int
+#if defined(__cplusplus)
rb_special_const_p(VALUE obj)
+#else
+rb_special_const_p(obj)
+ VALUE obj;
+#endif
{
if (SPECIAL_CONST_P(obj)) return Qtrue;
return Qfalse;
}
-#else
-VALUE rb_class_of _((VALUE));
-int rb_type _((VALUE));
-int rb_special_const_p _((VALUE));
-#endif
-
#include "intern.h"
#if defined(EXTLIB) && defined(USE_DLN_A_OUT)
@@ -590,6 +595,10 @@ int rb_special_const_p _((VALUE));
static char *dln_libs_to_be_linked[] = { EXTLIB, 0 };
#endif
+#ifndef rb_sys_stat
+#define rb_sys_stat stat
+#endif
+
#if defined(__cplusplus)
} /* extern "C" { */
#endif