summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author卜部昌平 <shyouhei@ruby-lang.org>2019-12-02 14:48:42 +0900
committer卜部昌平 <shyouhei@ruby-lang.org>2019-12-26 20:45:12 +0900
commit863dbb21d8912c73e84fed47f2d3a1ac5d8275d4 (patch)
treeb49b99fc802dbf5f3ac1264b165a83b251cf9ec1
parent1dd149d3b1e46f21b0c358fdf205e97ac009bb40 (diff)
downloadruby-863dbb21d8912c73e84fed47f2d3a1ac5d8275d4.tar.gz
assume C99
Now that we no longer support old compilers, we can safely delete several obsolete #ifdef gurads. Also because (as of writing) it is impossible to compile the program using C++ compilers, lets just entirely prohibit __cplusplus to reduce # of LOCs. Note however that we still cannot eliminate __STDC_VERSION__ checks, because MSVC does not define it, saying its C99 support is partial. See also https://social.msdn.microsoft.com/Forums/vstudio/en-US/53a4fd75-9f97-48b2-aa63-2e2e5a15efa3
-rw-r--r--internal.h15
-rw-r--r--internal/serial.h22
2 files changed, 10 insertions, 27 deletions
diff --git a/internal.h b/internal.h
index 5b7f87ae8d..337aee814d 100644
--- a/internal.h
+++ b/internal.h
@@ -12,13 +12,10 @@
#ifndef RUBY_INTERNAL_H
#define RUBY_INTERNAL_H 1
-#include "ruby.h"
+#include "ruby/config.h"
-#if defined(__cplusplus)
-extern "C" {
-#if 0
-} /* satisfy cc-mode */
-#endif
+#ifdef __cplusplus
+# error not for C++
#endif
#include "ruby/encoding.h"
@@ -87,10 +84,4 @@ extern "C" {
#include "internal/inits.h"
#include "internal/warnings.h"
-#if defined(__cplusplus)
-#if 0
-{ /* satisfy cc-mode */
-#endif
-} /* extern "C" { */
-#endif
#endif /* RUBY_INTERNAL_H */
diff --git a/internal/serial.h b/internal/serial.h
index 224ab47ac6..118848d089 100644
--- a/internal/serial.h
+++ b/internal/serial.h
@@ -10,21 +10,13 @@
* file COPYING are met. Consult the file for details.
*/
-#if defined(HAVE_LONG_LONG)
-typedef unsigned LONG_LONG rb_serial_t;
-# define SERIALT2NUM ULL2NUM
-# define PRI_SERIALT_PREFIX PRI_LL_PREFIX
-# define SIZEOF_SERIAL_T SIZEOF_LONG_LONG
-#elif defined(HAVE_UINT64_T)
-typedef uint64_t rb_serial_t;
-# define SERIALT2NUM SIZET2NUM
-# define PRI_SERIALT_PREFIX PRI_64_PREFIX
-# define SIZEOF_SERIAL_T SIZEOF_UINT64_T
-#else
-typedef unsigned long rb_serial_t;
-# define SERIALT2NUM ULONG2NUM
-# define PRI_SERIALT_PREFIX PRI_LONG_PREFIX
-# define SIZEOF_SERIAL_T SIZEOF_LONG
+#ifndef HAVE_LONG_LONG
+# error need C99+
#endif
+typedef unsigned LONG_LONG rb_serial_t;
+#define SERIALT2NUM ULL2NUM
+#define PRI_SERIALT_PREFIX PRI_LL_PREFIX
+#define SIZEOF_SERIAL_T SIZEOF_LONG_LONG
+
#endif /* INTERNAL_SERIAL_H */