summaryrefslogtreecommitdiff
path: root/include/ruby
diff options
context:
space:
mode:
author卜部昌平 <shyouhei@ruby-lang.org>2020-07-22 10:55:30 +0900
committer卜部昌平 <shyouhei@ruby-lang.org>2020-08-27 15:02:52 +0900
commit21b3bc10d3626272683e085b2b3ea62d2c05b1d7 (patch)
tree9543d4f2aa15ee14672869972666c5d4f48aa271 /include/ruby
parent3437e6247da991db94a804b2c15b2a05dc2d79bd (diff)
DEPRECATED_TYPE: is deprecated
Nobody uses this macro any longer.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/3341
Diffstat (limited to 'include/ruby')
-rw-r--r--include/ruby/backward/2/attributes.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/include/ruby/backward/2/attributes.h b/include/ruby/backward/2/attributes.h
index 8d00da0a9e..74dca627fb 100644
--- a/include/ruby/backward/2/attributes.h
+++ b/include/ruby/backward/2/attributes.h
@@ -60,7 +60,23 @@
#define DEPRECATED_BY(n,x) RBIMPL_ATTR_DEPRECATED(("by: " # n)) x
#undef DEPRECATED_TYPE
-#define DEPRECATED_TYPE(mseg, decl) decl RBIMPL_ATTR_DEPRECATED(mseg)
+#if defined(__GNUC__)
+# define DEPRECATED_TYPE(mesg, decl) \
+ _Pragma("message \"DEPRECATED_TYPE is deprecated, " \
+ "use RBIMPL_ATTR_DEPRECATED instead\""); \
+ decl RBIMPL_ATTR_DEPRECATED(mseg)
+#elif defined(_MSC_VER)
+# pragma deprecated(DEPRECATED_TYPE)
+# define DEPRECATED_TYPE(mesg, decl) \
+ __pragma(message(__FILE__"("STRINGIZE(__LINE__)"): warning: " \
+ "DEPRECATED_TYPE is deprecated, " \
+ "use RBIMPL_ATTR_DEPRECATED instead")) \
+ decl RBIMPL_ATTR_DEPRECATED(mseg)
+#else
+# define DEPRECATED_TYPE(mesg, decl) \
+ <-<-"DEPRECATED_TYPE is deprecated, " \
+ "use RBIMPL_ATTR_DEPRECATED instead"->->
+#endif
#undef RUBY_CXX_DEPRECATED
#define RUBY_CXX_DEPRECATED(mseg) RBIMPL_ATTR_DEPRECATED((mseg))