aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--file.c7
2 files changed, 10 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 520476a1d8..41c12834ff 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Mar 14 14:12:34 2013 NARUSE, Yui <naruse@ruby-lang.org>
+
+ * file.c (rb_sys_fail_path): use rb_sys_fail_path0 only on GCC.
+ __func__ is C99 feature.
+
Thu Mar 14 12:59:59 2013 NARUSE, Yui <naruse@ruby-lang.org>
* file.c (rb_sys_fail_path0): add to append the name of called function
diff --git a/file.c b/file.c
index 3ee68f561f..14636d34c9 100644
--- a/file.c
+++ b/file.c
@@ -102,8 +102,8 @@ int flock(int, int);
#define STAT(p, s) stat((p), (s))
#endif
-#define rb_sys_fail_path(path) rb_sys_fail_path0(__func__, path)
-
+#ifdef __GNUC__
+# define rb_sys_fail_path(path) rb_sys_fail_path0(__func__, path)
NORETURN(static void rb_sys_fail_path0(const char *,VALUE));
static void
rb_sys_fail_path0(const char *func_name, VALUE path)
@@ -112,6 +112,9 @@ rb_sys_fail_path0(const char *func_name, VALUE path)
rb_str_buf_append(mesg, path);
rb_sys_fail_str(mesg);
}
+#else
+# define rb_sys_fail_path(path) rb_sys_fail_str(path)
+#endif
#if defined(__BEOS__) || defined(__HAIKU__) /* should not change ID if -1 */
static int