Cannot install Ruby 2.2.* on Ubuntu 20.04

ankit@thinkpad:~/f22labs/skymdbackend$ rbenv install 2.2.10
Downloading ruby-2.2.10.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.10.tar.bz2
Installing ruby-2.2.10...

WARNING: ruby-2.2.10 is past its end of life and is now unsupported.
It no longer receives bug fixes or critical security updates.

 INT
checking for uid_t... yes
checking for convertible type of uid_t... UINT
checking for gid_t... yes
checking for convertible type of gid_t... UINT
checking for time_t... yes
checking for convertible type of time_t... LONG
checking for dev_t... yes
checking for convertible type of dev_t... ULONG
checking for mode_t... yes
checking for convertible type of mode_t... UINT
checking for rlim_t... yes
checking for convertible type of rlim_t... ULONG
checking for off_t... (cached) yes
checking for convertible type of off_t... LONG
checking for clockid_t... yes
checking for convertible type of clockid_t... INT
checking for prototypes... yes
checking token paste string... ansi
checking stringization... #expr
checking string literal concatenation... yes
checking for variable length prototypes and stdarg.h... yes
checking for variable length macro... yes
checking for NORETURN function attribute... __attribute__ ((noreturn)) x
checking for DEPRECATED function attribute... __attribute__ ((deprecated)) x
checking for NOINLINE function attribute... __attribute__ ((noinline)) x
checking for stdcall function attribute... x
checking for cdecl function attribute... x
checking for fastcall function attribute... x
checking for FUNC_MINIMIZED function attribute... __attribute__ ((optimize("-Os","-fomit-frame-pointer"))) x
checking for function alias... alias
checking for __atomic builtins... yes
checking for __sync builtins... yes
checking for __builtin_unreachable... yes
checking for exported function attribute... __attribute__ ((visibility("default")))
checking for function name string predefined identifier... __func__
checking whether sys_nerr is declared... yes
checking whether getenv is declared... yes
checking for size_t... yes
checking size of size_t... 8
checking size of ptrdiff_t... 8
checking for printf prefix for size_t... z
checking for printf prefix for ptrdiff_t... t
checking for struct stat.st_blksize... yes
checking for struct stat.st_blocks... yes
checking for struct stat.st_rdev... yes
checking size of struct stat.st_size... SIZEOF_OFF_T
checking size of struct stat.st_blocks... SIZEOF_OFF_T
checking size of struct stat.st_ino... SIZEOF_LONG
checking for struct stat.st_atim... yes
checking for struct stat.st_atimespec... no
checking for struct stat.st_atimensec... no
checking for struct stat.st_mtim... yes
checking for struct stat.st_mtimespec... no
checking for struct stat.st_mtimensec... no
checking for struct stat.st_ctim... yes
checking for struct stat.st_ctimespec... no
checking for struct stat.st_ctimensec... no
checking for struct stat.st_birthtimespec... no
checking for struct timeval... yes
checking size of struct timeval.tv_sec... SIZEOF_TIME_T
checking for struct timespec... yes
checking for struct timezone... yes
checking for clockid_t... (cached) yes
checking for fd_mask... yes
checking for int8_t... yes
checking size of int8_t... 1
checking for uint8_t... yes
checking size of uint8_t... 1
checking for int16_t... yes
checking size of int16_t... 2
checking for uint16_t... yes
checking size of uint16_t... 2
checking for int32_t... yes
checking size of int32_t... 4
checking for uint32_t... yes
checking size of uint32_t... 4
checking for int64_t... yes
checking size of int64_t... 8
checking for uint64_t... yes
checking size of uint64_t... 8
checking for int128_t... __int128
checking for uint128_t... unsigned __int128
checking for intptr_t... yes
checking size of intptr_t... 8
checking for uintptr_t... yes
checking size of uintptr_t... 8
checking for ssize_t... yes
checking size of ssize_t... 8
checking for stack end address... __libc_stack_end
checking for uid_t in sys/types.h... (cached) yes
checking type of array argument to getgroups... gid_t
checking return type of signal handlers... void
checking for working alloca.h... yes
checking for alloca... yes
checking for dynamic size alloca... ok
checking for working memcmp... yes
checking for broken erfc of glibc-2.3.6 on IA64... no
checking for acosh... yes
checking for cbrt... yes
checking for crypt... yes
checking for dup2... yes
checking for erf... yes
checking for ffs... yes
checking for finite... yes
checking for flock... yes
checking for hypot... yes
checking for isinf... yes
checking for isnan... yes
checking for lgamma_r... yes
checking for memmove... yes
checking for nextafter... yes
checking for setproctitle... no
checking for strchr... yes
checking for strerror... yes
checking for strlcat... no
checking for strlcpy... no
checking for strstr... yes
checking for tgamma... yes
checking sys/pstat.h usability... no
checking sys/pstat.h presence... no
checking for sys/pstat.h... no
checking for signbit... yes
checking for pid_t... (cached) yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for __syscall... no
checking for _longjmp... yes
checking for _setjmp... yes
checking for _setjmpex... no
checking for atan2l... yes
checking for atan2f... yes
checking for chroot... yes
checking for chsize... no
checking for clock_gettime... yes
checking for cosh... yes
checking for daemon... (cached) no
checking for dirfd... yes
checking for dl_iterate_phdr... yes
checking for dlopen... yes
checking for dladdr... yes
checking for dup... yes
checking for dup3... yes
checking for eaccess... yes
checking for endgrent... yes
checking for fchmod... yes
checking for fchown... yes
checking for fcntl... yes
checking for fdatasync... yes
checking for fgetattrlist... no
checking for fmod... yes
checking for fsync... yes
checking for ftruncate... yes
checking for ftruncate64... yes
checking for getattrlist... no
checking for getcwd... yes
checking for getgidx... no
checking for getgrnam... yes
checking for getgrnam_r... yes
checking for getgroups... yes
checking for getpgid... yes
checking for getpgrp... yes
checking for getpriority... yes
checking for getpwnam_r... yes
checking for getresgid... yes
checking for getresuid... yes
checking for getrlimit... yes
checking for getsid... yes
checking for gettimeofday... yes
checking for getuidx... no
checking for gmtime_r... yes
checking for initgroups... yes
checking for ioctl... yes
checking for isfinite... no
checking for issetugid... no
checking for killpg... yes
checking for lchmod... no
checking for lchown... yes
checking for link... yes
checking for llabs... yes
checking for lockf... yes
checking for log2... yes
checking for lstat... yes
checking for malloc_usable_size... yes
checking for malloc_size... no
checking for mblen... yes
checking for memalign... yes
checking for writev... yes
checking for memrchr... yes
checking for memmem... yes
checking for mktime... yes
checking for pipe2... yes
checking for poll... yes
checking for posix_fadvise... yes
checking for posix_memalign... yes
checking for ppoll... yes
checking for pread... yes
checking for qsort_r... yes
checking for readlink... yes
checking for round... yes
checking for sched_getaffinity... yes
checking for seekdir... yes
checking for select_large_fdset... no
checking for sendfile... yes
checking for setegid... yes
checking for setenv... yes
checking for seteuid... yes
checking for setgid... yes
checking for setgroups... yes
checking for setpgid... yes
checking for setpgrp... yes
checking for setregid... yes
checking for setresgid... yes
checking for setresuid... yes
checking for setreuid... yes
checking for setrgid... no
checking for setrlimit... yes
checking for setruid... no
checking for setsid... yes
checking for setuid... yes
checking for shutdown... yes
checking for sigaction... yes
checking for sigaltstack... yes
checking for sigprocmask... yes
checking for sinh... yes
checking for spawnv... no
checking for symlink... yes
checking for syscall... yes
checking for sysconf... yes
checking for tanh... yes
checking for telldir... yes
checking for timegm... yes
checking for times... yes
checking for truncate... yes
checking for truncate64... yes
checking for unsetenv... yes
checking for utimensat... yes
checking for utimes... yes
checking for wait4... yes
checking for waitpid... yes
checking if getcwd allocates buffer if NULL is given... yes
checking for __builtin_bswap16... yes
checking for __builtin_bswap32... yes
checking for __builtin_bswap64... yes
checking for __builtin_clz... yes
checking for __builtin_clzl... yes
checking for __builtin_clzll... yes
checking for __builtin_choose_expr... yes
checking for __builtin_choose_expr_constant_p... yes
checking for __builtin_types_compatible_p... yes
checking whether qsort_r is GNU version... yes
checking whether qsort_r is BSD version... no
checking whether atan2 handles Inf as C99... yes
checking whether lgamma_r handles -0.0... yes
checking for clock_getres... yes
checking for unsetenv returns a value... yes
checking for sigsetjmp as a macro or function... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for struct tm.tm_zone... yes
checking for struct tm.tm_gmtoff... yes
checking for external int daylight... yes
checking for external timezone... long
checking for external altzone... no
checking for timezone... yes
checking whether timezone requires zero arguments... yes
checking for negative time_t for gmtime(3)... yes
checking for localtime(3) overflow correctly... yes
checking whether right shift preserve sign bit... yes
checking whether _SC_CLK_TCK is supported... yes
checking stack growing direction on x86_64... -1
checking for pthread_kill in -lthr... no
checking for pthread_kill in -lpthread... yes
checking for pthread_np.h... no
checking whether pthread_t is scalar type... yes
checking for sched_yield... yes
checking for pthread_attr_setinheritsched... yes
checking for pthread_attr_get_np... no
checking for pthread_attr_getstack... yes
checking for pthread_get_stackaddr_np... no
checking for pthread_get_stacksize_np... no
checking for thr_stksegment... no
checking for pthread_stackseg_np... no
checking for pthread_getthrds_np... no
checking for pthread_cond_init... yes
checking for pthread_condattr_setclock... yes
checking for pthread_condattr_init... yes
checking for pthread_sigmask... yes
checking for pthread_setname_np... yes
checking for pthread_getattr_np... yes
checking for pthread_attr_init... yes
checking arguments of pthread_setname_np... (pthread_self(), name)
checking if mcontext_t is a pointer... no
checking for getcontext... yes
checking for setcontext... yes
checking if fork works with pthread... yes
checking whether ELF binaries are produced... yes
checking elf.h usability... yes
checking elf.h presence... yes
checking for elf.h... yes
checking elf_abi.h usability... no
checking elf_abi.h presence... no
checking for elf_abi.h... no
checking whether OS depend dynamic link works... yes
checking whether -Wl,-R. is accepted as LDFLAGS... yes
checking for backtrace... yes
checking for broken backtrace... no
checking valgrind/memcheck.h usability... no
checking valgrind/memcheck.h presence... no
checking for valgrind/memcheck.h... no
checking for strip... strip
checking whether -fPIE is accepted as CFLAGS... yes
checking whether -pie is accepted as LDFLAGS... yes
checking for __builtin_setjmp... yes with cast ()
checking for setjmp type... __builtin_setjmp
checking for prefix of external symbols... NONE
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking if make is GNU make... yes
checking for broken memmem... no
checking for nroff... /usr/bin/nroff
.ext/include/x86_64-linux/ruby/config.h updated
ruby library version = 2.2.0
configure: creating ./config.status
config.status: creating GNUmakefile
config.status: creating Makefile
config.status: creating ruby-2.2.pc
	CC = gcc
	LD = ld
	LDSHARED = gcc -shared
	CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -std=iso9899:1999
	XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT -fPIE
	CPPFLAGS = -I/home/ankit/.rbenv/versions/2.2.10/include    -I. -I.ext/include/x86_64-linux -I./include -I.
	DLDFLAGS = -fstack-protector -pie
	SOLIBS =
Using built-in specs.
copying dummy probes.h
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/9/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:hsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.3.0-10ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none,hsa --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 9.3.0 (Ubuntu 9.3.0-10ubuntu2)
compiling main.c
compiling dmydln.c
compiling miniinit.c
compiling miniprelude.c
compiling array.c
In file included from array.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling bignum.c
compiling class.c
compiling compar.c
In file included from bignum.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from class.c:26:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
array.c: In function ‘rb_ary_rindex’:
array.c:1530:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1530 |      if (!rb_equal(e, val)) break;
      |         ^
array.c:1531:4: note: here
 1531 |    case Qtrue:
      |    ^~~~
array.c: In function ‘rb_ary_index’:
array.c:1467:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1467 |      if (!rb_equal(e, val)) break;
      |         ^
array.c:1468:4: note: here
 1468 |    case Qtrue:
      |    ^~~~
compiling complex.c
In file included from complex.c:8:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling dir.c
In file included from dir.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling dln_find.c
compiling encoding.c
In file included from encoding.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
encoding.c: In function ‘rb_enc_associate_index’:
encoding.c:825:2: warning: implicit declaration of function ‘rb_str_change_terminator_length’ [-Wimplicit-function-declaration]
  825 |  rb_str_change_terminator_length(obj, oldtermlen, termlen);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encoding.c: In function ‘rb_enc_get_index’:
encoding.c:771:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  771 |  if (NIL_P(obj)) break;
      |     ^
encoding.c:772:7: note: here
  772 |       case T_DATA:
      |       ^~~~
encoding.c: In function ‘enc_capable’:
encoding.c:731:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  731 |  if (is_data_encoding(obj)) return TRUE;
      |     ^
encoding.c:732:7: note: here
  732 |       default:
      |       ^~~~~~~
compiling enum.c
In file included from enum.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling enumerator.c
In file included from enumerator.c:15:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling error.c
compiling eval.c
In file included from error.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from eval.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling load.c
In file included from load.c:5:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
load.c: In function ‘search_required’:
load.c:927:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  927 |  if (ft) {
      |     ^
load.c:932:7: note: here
  932 |       case 1:
      |       ^~~~
compiling proc.c
In file included from method.h:14,
                 from vm_core.h:24,
                 from eval_intern.h:5,
                 from proc.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling file.c
compiling gc.c
In file included from file.c:26:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from gc.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
gc.c: In function ‘make_io_zombie’:
gc.c:1843:32: warning: cast between incompatible function types from ‘int (*)(rb_io_t *)’ {aka ‘int (*)(struct rb_io_t *)’} to ‘void (*)(void *)’ [-Wcast-function-type]
 1843 |     make_zombie(objspace, obj, (void (*)(void*))rb_io_fptr_finalize, fptr);
      |                                ^
compiling hash.c
gc.c: In function ‘internal_object_p’:
gc.c:2191:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2191 |      if (FL_TEST(p, FL_SINGLETON))
      |         ^
gc.c:2193:4: note: here
 2193 |    default:
      |    ^~~~~~~
In file included from hash.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
hash.c: In function ‘rb_hash_s_create’:
hash.c:622:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
  622 |       val = RARRAY_AREF(v, 1);
hash.c:623:5: note: here
  623 |     case 1:
      |     ^~~~
compiling inits.c
In file included from inits.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling io.c
In file included from io.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
io.c: In function ‘rb_io_s_popen’:
io.c:6303:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 6303 |  pmode = argv[1];
      |  ~~~~~~^~~~~~~~~
io.c:6304:7: note: here
 6304 |       case 1:
      |       ^~~~
compiling marshal.c
In file included from marshal.c:16:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling math.c
marshal.c: In function ‘r_object0’:
marshal.c:1740:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1740 |    if (bs & 1) --dst;
      |       ^
marshal.c:1741:9: note: here
 1741 |         default: bs = 0; break;
      |         ^~~~~~~
marshal.c: In function ‘load_mantissa’:
marshal.c:364:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
  364 |        default: m = *buf++ & 0xff;
      |                 ~~^~~~~~~~~~~~~~~
marshal.c:366:8: note: here
  366 |        case 3: m = (m << 8) | (*buf++ & 0xff);
      |        ^~~~
marshal.c:366:18: warning: this statement may fall through [-Wimplicit-fallthrough=]
  366 |        case 3: m = (m << 8) | (*buf++ & 0xff);
      |                ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
marshal.c:369:8: note: here
  369 |        case 2: m = (m << 8) | (*buf++ & 0xff);
      |        ^~~~
marshal.c:369:18: warning: this statement may fall through [-Wimplicit-fallthrough=]
  369 |        case 2: m = (m << 8) | (*buf++ & 0xff);
      |                ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
marshal.c:372:8: note: here
  372 |        case 1: m = (m << 8) | (*buf++ & 0xff);
      |        ^~~~
In file included from math.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling node.c
In file included from method.h:14,
                 from vm_core.h:24,
                 from node.c:13:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling numeric.c
In file included from numeric.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling object.c
In file included from object.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from ./include/ruby.h:33,
                 from internal.h:15,
                 from object.c:14:
object.c: In function ‘rb_f_integer’:
./include/ruby/ruby.h:648:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  648 | #define NUM2INT(x) rb_num2int_inline(x)
      |                    ^~~~~~~~~~~~~~~~~~~~
object.c:2801:9: note: in expansion of macro ‘NUM2INT’
 2801 |  base = NUM2INT(argv[1]);
      |         ^~~~~~~
object.c:2802:7: note: here
 2802 |       case 1:
      |       ^~~~
compiling pack.c
In file included from pack.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling parse.c
In file included from parse.y:24:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
parse.y: In function ‘ruby_yyparse’:
parse.y:378:43: warning: this statement may fall through [-Wimplicit-fallthrough=]
  378 | #define rb_node_newnode(type, a1, a2, a3) node_newnode(parser, (type), (a1), (a2), (a3))
      |                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node.h:364:30: note: in expansion of macro ‘rb_node_newnode’
  364 | #define NEW_NODE(t,a0,a1,a2) rb_node_newnode((t),(VALUE)(a0),(VALUE)(a1),(VALUE)(a2))
      |                              ^~~~~~~~~~~~~~~
parse.y:3971:15: note: in expansion of macro ‘NEW_NODE’
 3971 |        node = NEW_NODE(NODE_DSTR, STR_NEW0(), 1, NEW_LIST(node));
      |               ^~~~~~~~
parse.y:3972:6: note: here
 3972 |      case NODE_DSTR:
      |      ^~~~
parse.y:324:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
  324 | #define yyerror(msg) parser_yyerror(parser, (msg))
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
parse.y:4996:5: note: in expansion of macro ‘yyerror’
 4996 |     yyerror("can't define singleton method for literals");
      |     ^~~~~~~
parse.y:4997:10: note: here
 4997 |          default:
      |          ^~~~~~~
parse.y: In function ‘parser_yylex’:
parse.y:7983:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 7983 |   if ((c = nextc()) != '.') {
      |      ^
parse.y:7992:8: note: here
 7992 |        default:
      |        ^~~~~~~
parse.y:7994:16: warning: this statement may fall through [-Wimplicit-fallthrough=]
 7994 |   lex_nextline = lex_lastline;
parse.y:7995:8: note: here
 7995 |        case -1:  /* EOF no decrement*/
      |        ^~~~
parse.y:8342:12: warning: this statement may fall through [-Wimplicit-fallthrough=]
 8342 |  paren_nest--;
parse.y:8343:7: note: here
 8343 |       case '}':
      |       ^~~~
parse.y: In function ‘parser_here_document’:
parse.y:6697:23: warning: this statement may fall through [-Wimplicit-fallthrough=]
 6697 |       if (--pend == p || pend[-1] != '\r') {
      |           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
parse.y:6701:5: note: here
 6701 |     case '\r':
      |     ^~~~
parse.y: In function ‘parser_read_escape’:
parse.y:6003:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 6003 |  if ((c = nextc()) != '-') {
      |     ^
parse.y:6007:7: note: here
 6007 |       case 'c':
      |       ^~~~
parse.y: In function ‘parse_gvar’:
parse.y:7707:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 7707 |  if (!parser_is_identchar()) {
      |      ^
parse.y:7712:7: note: here
 7712 |       case '0':
      |       ^~~~
parse.y: In function ‘is_static_content’:
parse.y:9515:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 9515 |  if (!(node = node->nd_head)) break;
      |     ^
parse.y:9516:7: note: here
 9516 |       case NODE_ARRAY:
      |       ^~~~
compiling process.c
In file included from process.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
process.c: In function ‘handle_fork_error’:
process.c:3217:24: warning: cast between incompatible function types from ‘void (*)(int)’ to ‘VALUE (*)()’ {aka ‘long unsigned int (*)()’} [-Wcast-function-type]
 3217 |             rb_protect((VALUE (*)())rb_thread_sleep, 1, &state);
      |                        ^
compiling random.c
In file included from random.c:62:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from random.c:1245:
siphash.c: In function ‘ruby_sip_hash24’:
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
  430 | #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
      |                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:444:6: note: in expansion of macro ‘OR_BYTE’
  444 |      OR_BYTE(6);
      |      ^~~~~~~
siphash.c:445:2: note: here
  445 |  case 6:
      |  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
  430 | #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
      |                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:446:6: note: in expansion of macro ‘OR_BYTE’
  446 |      OR_BYTE(5);
      |      ^~~~~~~
siphash.c:447:2: note: here
  447 |  case 5:
      |  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
  430 | #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
      |                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:448:6: note: in expansion of macro ‘OR_BYTE’
  448 |      OR_BYTE(4);
      |      ^~~~~~~
siphash.c:449:2: note: here
  449 |  case 4:
      |  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
  430 | #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
      |                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:461:6: note: in expansion of macro ‘OR_BYTE’
  461 |      OR_BYTE(2);
      |      ^~~~~~~
siphash.c:462:2: note: here
  462 |  case 2:
      |  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
  430 | #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
      |                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:463:6: note: in expansion of macro ‘OR_BYTE’
  463 |      OR_BYTE(1);
      |      ^~~~~~~
siphash.c:464:2: note: here
  464 |  case 1:
      |  ^~~~
random.c: In function ‘rand_range’:
random.c:1036:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1036 |       case T_FLOAT: {
      |                     ^
random.c:1042:7: note: here
 1042 |       default:
      |       ^~~~~~~
random.c: In function ‘random_load’:
random.c:632:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  632 |  seed = ary[2];
      |  ~~~~~^~~~~~~~
random.c:633:7: note: here
  633 |       case 2:
      |       ^~~~
random.c:634:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  634 |  left = ary[1];
      |  ~~~~~^~~~~~~~
random.c:635:7: note: here
  635 |       case 1:
      |       ^~~~
compiling range.c
In file included from range.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling rational.c
In file included from rational.c:8:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling re.c
In file included from re.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
re.c: In function ‘unescape_nonascii’:
re.c:2313:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2313 |                 {
      |                 ^
re.c:2324:15: note: here
 2324 |               case '0': /* \0, \0O, \0OO */
      |               ^~~~
re.c: In function ‘read_escaped_byte’:
re.c:2086:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2086 |         if (p == end || *p++ != '-') {
      |             ~~~~~~~~~^~~~~~~~~~~~~~
re.c:2090:7: note: here
 2090 |       case 'c': /* \cX, \c\M-X */
      |       ^~~~
compiling regcomp.c
compiling regenc.c
compiling regerror.c
compiling regexec.c
compiling regparse.c
regparse.c: In function ‘parse_enclose’:
regparse.c:5183:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 5183 |       if (IS_SYNTAX_OP2(env->syntax, ONIG_SYN_OP2_OPTION_PERL)) {
      |          ^
regparse.c:5211:5: note: here
 5211 |     case '-': case 'i': case 'm': case 's': case 'x':
      |     ^~~~
compiling regsyntax.c
compiling ruby.c
In file included from ruby.c:18:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
ruby.c: In function ‘proc_options’:
ruby.c:778:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  778 |      opt->do_print = TRUE;
ruby.c:780:4: note: here
  780 |    case 'n':
      |    ^~~~
ruby.c:804:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
  804 |      opt->verbose = 1;
      |      ~~~~~~~~~~~~~^~~
ruby.c:805:4: note: here
  805 |    case 'w':
      |    ^~~~
ruby.c:1111:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1111 |      if (!s[1])
      |         ^
ruby.c:1114:4: note: here
 1114 |    default:
      |    ^~~~~~~
compiling safe.c
compiling signal.c
In file included from method.h:14,
                 from vm_core.h:24,
                 from safe.c:22:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from signal.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
signal.c: In function ‘ruby_signal’:
signal.c:597:31: warning: cast between incompatible function types from ‘ruby_sighandler_t’ {aka ‘void (*)(int)’} to ‘void (*)(int,  siginfo_t *, void *)’ {aka ‘void (*)(int,  struct <anonymous> *, void *)’} [-Wcast-function-type]
  597 |         sigact.sa_sigaction = (ruby_sigaction_t*)handler;
      |                               ^
signal.c:626:9: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ {aka ‘void (*)(int,  struct <anonymous> *, void *)’} to ‘void (*)(int)’ [-Wcast-function-type]
  626 |  return (sighandler_t)old.sa_sigaction;
      |         ^
signal.c: In function ‘default_handler’:
signal.c:1045:16: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ {aka ‘void (*)(int,  struct <anonymous> *, void *)’} to ‘void (*)(int)’ [-Wcast-function-type]
 1045 |         func = (sighandler_t)sigbus;
      |                ^
signal.c:1050:16: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ {aka ‘void (*)(int,  struct <anonymous> *, void *)’} to ‘void (*)(int)’ [-Wcast-function-type]
 1050 |         func = (sighandler_t)sigsegv;
      |                ^
signal.c: In function ‘Init_signal’:
signal.c:1456:29: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ {aka ‘void (*)(int,  struct <anonymous> *, void *)’} to ‘void (*)(int)’ [-Wcast-function-type]
 1456 |  install_sighandler(SIGBUS, (sighandler_t)sigbus);
      |                             ^
signal.c:1338:75: note: in definition of macro ‘install_sighandler’
 1338 | #  define install_sighandler(signum, handler) (install_sighandler(signum, handler) ? rb_bug(#signum) : (void)0)
      |                                                                           ^~~~~~~
signal.c:1459:29: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ {aka ‘void (*)(int,  struct <anonymous> *, void *)’} to ‘void (*)(int)’ [-Wcast-function-type]
 1459 |  install_sighandler(SIGILL, (sighandler_t)sigill);
      |                             ^
signal.c:1338:75: note: in definition of macro ‘install_sighandler’
 1338 | #  define install_sighandler(signum, handler) (install_sighandler(signum, handler) ? rb_bug(#signum) : (void)0)
      |                                                                           ^~~~~~~
signal.c:1465:30: warning: cast between incompatible function types from ‘void (*)(int,  siginfo_t *, void *)’ {aka ‘void (*)(int,  struct <anonymous> *, void *)’} to ‘void (*)(int)’ [-Wcast-function-type]
 1465 |  install_sighandler(SIGSEGV, (sighandler_t)sigsegv);
      |                              ^
signal.c:1338:75: note: in definition of macro ‘install_sighandler’
 1338 | #  define install_sighandler(signum, handler) (install_sighandler(signum, handler) ? rb_bug(#signum) : (void)0)
      |                                                                           ^~~~~~~
compiling sprintf.c
In file included from sprintf.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
sprintf.c: In function ‘rb_str_format’:
sprintf.c:653:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  653 |      p--;
      |      ~^~
sprintf.c:654:4: note: here
  654 |    case '%':
      |    ^~~~
In file included from sprintf.c:1261:
vsnprintf.c: In function ‘BSD_vfprintf’:
vsnprintf.c:880:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  880 |    if (prec != 0)
      |       ^
vsnprintf.c:882:3: note: here
  882 |   case 'g':
      |   ^~~~
compiling st.c
In file included from st.c:9:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
st.c: In function ‘st_hash’:
st.c:1597:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1597 |  t |= data_at(n) << CHAR_BIT*(n)
      |  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1499:25: note: in expansion of macro ‘UNALIGNED_ADD’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                         ^~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1596:27: note: here
 1596 | # define UNALIGNED_ADD(n) case (n) + 1: \
      |                           ^~~~
st.c:1499:43: note: in expansion of macro ‘UNALIGNED_ADD’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                           ^~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1597:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1597 |  t |= data_at(n) << CHAR_BIT*(n)
      |  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1499:43: note: in expansion of macro ‘UNALIGNED_ADD’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                           ^~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1596:27: note: here
 1596 | # define UNALIGNED_ADD(n) case (n) + 1: \
      |                           ^~~~
st.c:1499:61: note: in expansion of macro ‘UNALIGNED_ADD’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                             ^~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1597:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1597 |  t |= data_at(n) << CHAR_BIT*(n)
      |  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1499:61: note: in expansion of macro ‘UNALIGNED_ADD’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                             ^~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1596:27: note: here
 1596 | # define UNALIGNED_ADD(n) case (n) + 1: \
      |                           ^~~~
st.c:1499:79: note: in expansion of macro ‘UNALIGNED_ADD’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                                               ^~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1597:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1597 |  t |= data_at(n) << CHAR_BIT*(n)
      |  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1499:79: note: in expansion of macro ‘UNALIGNED_ADD’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                                               ^~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1596:27: note: here
 1596 | # define UNALIGNED_ADD(n) case (n) + 1: \
      |                           ^~~~
st.c:1497:25: note: in expansion of macro ‘UNALIGNED_ADD’
 1497 | #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
      |                         ^~~~~~~~~~~~~
st.c:1499:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                                                ^~~~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1597:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1597 |  t |= data_at(n) << CHAR_BIT*(n)
      |  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1497:25: note: in expansion of macro ‘UNALIGNED_ADD’
 1497 | #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
      |                         ^~~~~~~~~~~~~
st.c:1499:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                                                ^~~~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1596:27: note: here
 1596 | # define UNALIGNED_ADD(n) case (n) + 1: \
      |                           ^~~~
st.c:1497:43: note: in expansion of macro ‘UNALIGNED_ADD’
 1497 | #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
      |                                           ^~~~~~~~~~~~~
st.c:1499:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                                                ^~~~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1597:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1597 |  t |= data_at(n) << CHAR_BIT*(n)
      |  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1497:43: note: in expansion of macro ‘UNALIGNED_ADD’
 1497 | #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
      |                                           ^~~~~~~~~~~~~
st.c:1499:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                                                ^~~~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
st.c:1596:27: note: here
 1596 | # define UNALIGNED_ADD(n) case (n) + 1: \
      |                           ^~~~
st.c:1497:61: note: in expansion of macro ‘UNALIGNED_ADD’
 1497 | #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
      |                                                             ^~~~~~~~~~~~~
st.c:1499:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 1499 | #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
      |                                                                                ^~~~~~~~~~~~~~~
st.c:1505:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 1505 | #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
      |                           ^~~~~~~~~~~~~~~
st.c:1599:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
 1599 |  UNALIGNED_ADD_ALL;
      |  ^~~~~~~~~~~~~~~~~
compiling strftime.c
strftime.c: In function ‘rb_strftime_with_timespec’:
strftime.c:780:12: warning: this statement may fall through [-Wimplicit-fallthrough=]
  780 |    padding = '0';
      |    ~~~~~~~~^~~~~
strftime.c:781:3: note: here
  781 |   case '1':  case '2': case '3': case '4':
      |   ^~~~
compiling string.c
In file included from string.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling struct.c
In file included from struct.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling symbol.c
In file included from symbol.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling time.c
In file included from time.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
time.c: In function ‘utc_offset_arg’:
time.c:2080:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2080 |      n += (s[7] * 10 + s[8] - '0' * 11);
      |      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
time.c:2081:4: note: here
 2081 |    case 6:
      |    ^~~~
compiling transcode.c
In file included from transcode.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling util.c
In file included from util.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
util.c: In function ‘ruby_strtod’:
util.c:1979:18: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1979 |             sign = 1;
      |             ~~~~~^~~
util.c:1981:11: note: here
 1981 |           case '+':
      |           ^~~~
util.c:2143:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2143 |             esign = 1;
      |             ~~~~~~^~~
util.c:2144:11: note: here
 2144 |           case '+':
      |           ^~~~
util.c: In function ‘ruby_dtoa’:
util.c:3318:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3318 |         leftright = 0;
      |         ~~~~~~~~~~^~~
util.c:3320:7: note: here
 3320 |       case 4:
      |       ^~~~
util.c:3326:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3326 |         leftright = 0;
      |         ~~~~~~~~~~^~~
util.c:3328:7: note: here
 3328 |       case 5:
      |       ^~~~
compiling variable.c
compiling version.c
In file included from variable.c:14:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling compile.c
In file included from compile.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compile.c: In function ‘iseq_compile_each’:
compile.c:4189:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4189 |      boff = 1;
      |      ~~~~~^~~
compile.c:4190:4: note: here
 4190 |    default:
      |    ^~~~~~~
compile.c:4625:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4625 |      flag |= VM_CALL_VCALL;
compile.c:4627:4: note: here
 4627 |    case NODE_FCALL:
      |    ^~~~
compile.c:4504:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4504 |  if (node->nd_mid == idAREF && !private_recv_p(node) && node->nd_args &&
      |     ^
compile.c:4519:7: note: here
 4519 |       case NODE_FCALL:
      |       ^~~~
compile.c: In function ‘defined_expr0’:
compile.c:2982:23: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2982 |       case NODE_ARRAY:{
      |                       ^
compile.c:2994:7: note: here
 2994 |       case NODE_STR:
      |       ^~~~
compiling debug.c
In file included from method.h:14,
                 from vm_core.h:24,
                 from eval_intern.h:5,
                 from debug.c:16:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling iseq.c
compiling vm.c
In file included from iseq.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from vm.c:11:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from ./include/ruby.h:33,
                 from internal.h:15,
                 from iseq.c:12:
iseq.c: In function ‘rb_insn_operand_intern’:
./include/ruby/ruby.h:369:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  369 | #define ID2SYM(x) (rb_id2sym(x))
      |                   ~^~~~~~~~~~~~~
iseq.c:1182:7: note: in expansion of macro ‘ID2SYM’
 1182 |  op = ID2SYM(op);
      |       ^~~~~~
iseq.c:1184:7: note: here
 1184 |       case TS_VALUE:  /* VALUE */
      |       ^~~~
In file included from vm.c:102:
vm_eval.c: In function ‘rb_eval_string_protect’:
vm_eval.c:1476:23: warning: cast between incompatible function types from ‘VALUE (*)(const char *)’ {aka ‘long unsigned int (*)(const char *)’} to ‘VALUE (*)(VALUE)’ {aka ‘long unsigned int (*)(long unsigned int)’} [-Wcast-function-type]
 1476 |     return rb_protect((VALUE (*)(VALUE))rb_eval_string, (VALUE)str, state);
      |                       ^
In file included from vm_exec.c:120,
                 from vm.c:99:
insns.def: In function ‘vm_exec_core’:
insns.def:1315:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1315 |       case T_FLOAT: {
      |                     ^
insns.def:1321:7: note: here
 1321 |       case T_SYMBOL: /* fall through */
      |       ^~~~
In file included from vm.c:97:
vm_insnhelper.c: In function ‘vm_search_super_method’:
vm_insnhelper.c:1954:2: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1954 |  vm_super_outside();
      |  ^~~~~~~~~~~~~~~~~~
vm_insnhelper.c:1955:7: note: here
 1955 |       case -2:
      |       ^~~~
compiling vm_dump.c
In file included from vm_dump.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling vm_backtrace.c
compiling vm_trace.c
In file included from vm_backtrace.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from vm_trace.c:24:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
vm_trace.c: In function ‘exec_hooks_body’:
vm_trace.c:259:6: warning: cast between incompatible function types from ‘rb_event_hook_func_t’ {aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)’} to ‘void (*)(VALUE,  const rb_trace_arg_t *)’ {aka ‘void (*)(long unsigned int,  const struct rb_trace_arg_struct *)’} [-Wcast-function-type]
  259 |   (*((rb_event_hook_raw_arg_func_t)hook->func))(hook->data, trace_arg);
      |      ^
vm_trace.c: In function ‘rb_tracepoint_enable’:
vm_trace.c:1014:49: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *)’ {aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)’} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE)’ {aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)’} [-Wcast-function-type]
 1014 |  rb_thread_add_event_hook2(tp->target_th->self, (rb_event_hook_func_t)tp_call_trace, tp->events, tpval,
      |                                                 ^
vm_trace.c:1018:21: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *)’ {aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)’} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE)’ {aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)’} [-Wcast-function-type]
 1018 |  rb_add_event_hook2((rb_event_hook_func_t)tp_call_trace, tp->events, tpval,
      |                     ^
vm_trace.c: In function ‘rb_tracepoint_disable’:
vm_trace.c:1033:61: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *)’ {aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)’} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE)’ {aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)’} [-Wcast-function-type]
 1033 |  rb_thread_remove_event_hook_with_data(tp->target_th->self, (rb_event_hook_func_t)tp_call_trace, tpval);
      |                                                             ^
vm_trace.c:1036:33: warning: cast between incompatible function types from ‘void (*)(VALUE,  rb_trace_arg_t *)’ {aka ‘void (*)(long unsigned int,  struct rb_trace_arg_struct *)’} to ‘void (*)(rb_event_flag_t,  VALUE,  VALUE,  ID,  VALUE)’ {aka ‘void (*)(unsigned int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)’} [-Wcast-function-type]
 1036 |  rb_remove_event_hook_with_data((rb_event_hook_func_t)tp_call_trace, tpval);
      |                                 ^
compiling thread.c
In file included from method.h:14,
                 from vm_core.h:24,
                 from eval_intern.h:5,
                 from thread.c:60:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling cont.c
In file included from cont.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling ./enc/ascii.c
compiling ./enc/us_ascii.c
compiling ./enc/unicode.c
compiling ./enc/utf_8.c
thread.c: In function ‘rb_thread_fd_select’:
thread.c:3462:34: warning: ‘orig_read.maxfd’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 3462 |     rb_fdset_t UNINITIALIZED_VAR(orig_read);
      |                                  ^~~~~~~~~
In file included from method.h:14,
                 from vm_core.h:24,
                 from eval_intern.h:5,
                 from thread.c:60:
thread.c:3462:34: note: ‘orig_read.maxfd’ was declared here
 3462 |     rb_fdset_t UNINITIALIZED_VAR(orig_read);
      |                                  ^~~~~~~~~
internal.h:40:30: note: in definition of macro ‘UNINITIALIZED_VAR’
   40 | #define UNINITIALIZED_VAR(x) x __attribute__((unused))
      |                              ^
thread.c:3463:34: warning: ‘orig_write.maxfd’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 3463 |     rb_fdset_t UNINITIALIZED_VAR(orig_write);
      |                                  ^~~~~~~~~~
In file included from method.h:14,
                 from vm_core.h:24,
                 from eval_intern.h:5,
                 from thread.c:60:
thread.c:3463:34: note: ‘orig_write.maxfd’ was declared here
 3463 |     rb_fdset_t UNINITIALIZED_VAR(orig_write);
      |                                  ^~~~~~~~~~
internal.h:40:30: note: in definition of macro ‘UNINITIALIZED_VAR’
   40 | #define UNINITIALIZED_VAR(x) x __attribute__((unused))
      |                              ^
thread.c:3464:34: warning: ‘orig_except.maxfd’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 3464 |     rb_fdset_t UNINITIALIZED_VAR(orig_except);
      |                                  ^~~~~~~~~~~
In file included from method.h:14,
                 from vm_core.h:24,
                 from eval_intern.h:5,
                 from thread.c:60:
thread.c:3464:34: note: ‘orig_except.maxfd’ was declared here
 3464 |     rb_fdset_t UNINITIALIZED_VAR(orig_except);
      |                                  ^~~~~~~~~~~
internal.h:40:30: note: in definition of macro ‘UNINITIALIZED_VAR’
   40 | #define UNINITIALIZED_VAR(x) x __attribute__((unused))
      |                              ^
compiling newline.c
compiling ./missing/setproctitle.c
compiling ./missing/strlcat.c
compiling ./missing/strlcpy.c
compiling addr2line.c
compiling dmyext.c
compiling dmyenc.c
compiling dln.c
addr2line.c: In function ‘kvprintf’:
addr2line.c:960:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  960 |    if (!dot) {
      |       ^
addr2line.c:964:3: note: here
  964 |   case '1': case '2': case '3': case '4':
      |   ^~~~
addr2line.c:1100:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1100 |    upper = 1;
      |    ~~~~~~^~~
addr2line.c:1101:3: note: here
 1101 |   case 'x':
      |   ^~~~
compiling localeinit.c
compiling prelude.c
In file included from localeinit.c:12:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from prelude.c:7:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
linking miniruby
generating encdb.h
rbconfig.rb updated
generating enc.mk
creating verconf.h
encdb.h updated
verconf.h updated
compiling loadpath.c
making srcs under enc
make[1]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[1]: Nothing to be done for 'srcs'.
make[1]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
generating transdb.h
linking static-library libruby-static.a
ar: `u' modifier ignored since `D' is the default (see `U')
transdb.h updated
verifying static-library libruby-static.a
generating makefile exts.mk
making enc
making trans
make[1]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[1]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
compiling ./enc/trans/transdb.c
compiling ./enc/encdb.c
compiling ./enc/big5.c
configuring -test-/array/resize
configuring -test-/bignum
configuring -test-/bug-3571
configuring -test-/bug-3662
configuring -test-/bug-5832
configuring -test-/bug_reporter
configuring -test-/class
configuring -test-/debug
configuring -test-/dln/empty
configuring -test-/exception
configuring -test-/fatal
configuring -test-/file
compiling ./enc/trans/big5.c
In file included from ./enc/encdb.c:12:
./internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
./internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling ./enc/cp949.c
compiling ./enc/emacs_mule.c
compiling ./enc/euc_jp.c
compiling ./enc/euc_kr.c
compiling ./enc/euc_tw.c
compiling ./enc/gb2312.c
compiling ./enc/gb18030.c
compiling ./enc/gbk.c
compiling ./enc/trans/chinese.c
compiling ./enc/iso_8859_1.c
compiling ./enc/iso_8859_2.c
compiling ./enc/iso_8859_3.c
configuring -test-/float
configuring -test-/funcall
configuring -test-/hash
configuring -test-/iseq_load
configuring -test-/iter
configuring -test-/load/dot.dot
configuring -test-/marshal/compat
configuring -test-/marshal/usr
configuring -test-/method
configuring -test-/num2int
configuring -test-/path_to_class
configuring -test-/postponed_job
configuring -test-/printf
configuring -test-/proc
configuring -test-/rational
configuring -test-/recursion
configuring -test-/st/foreach
configuring -test-/st/numhash
configuring -test-/st/update
configuring -test-/string
configuring -test-/struct
configuring -test-/symbol
compiling ./enc/iso_8859_4.c
compiling ./enc/iso_8859_5.c
configuring -test-/tracepoint
configuring -test-/typeddata
configuring -test-/vm
configuring -test-/wait_for_single_fd
configuring -test-/win32/console
Failed to configure -test-/win32/console. It will not be installed.
configuring -test-/win32/dln
compiling ./enc/iso_8859_6.c
Failed to configure -test-/win32/dln. It will not be installed.
configuring -test-/win32/fd_setsize
Failed to configure -test-/win32/fd_setsize. It will not be installed.
configuring bigdecimal
compiling ./enc/trans/emoji.c
compiling ./enc/iso_8859_7.c
compiling ./enc/trans/emoji_iso2022_kddi.c
compiling ./enc/iso_8859_8.c
configuring continuation
configuring coverage
configuring date
compiling ./enc/iso_8859_9.c
configuring dbm
compiling ./enc/iso_8859_10.c
compiling ./enc/trans/emoji_sjis_docomo.c
compiling ./enc/iso_8859_11.c
compiling ./enc/iso_8859_13.c
compiling ./enc/trans/emoji_sjis_kddi.c
compiling ./enc/iso_8859_14.c
compiling ./enc/iso_8859_15.c
compiling ./enc/trans/emoji_sjis_softbank.c
compiling ./enc/iso_8859_16.c
compiling ./enc/koi8_r.c
compiling ./enc/trans/escape.c
compiling ./enc/koi8_u.c
compiling ./enc/trans/gb18030.c
compiling ./enc/shift_jis.c
compiling ./enc/trans/gbk.c
compiling ./enc/utf_16be.c
compiling ./enc/utf_16le.c
compiling ./enc/trans/iso2022.c
compiling ./enc/utf_32be.c
compiling ./enc/utf_32le.c
compiling ./enc/trans/japanese.c
compiling ./enc/windows_31j.c
compiling ./enc/trans/japanese_euc.c
compiling ./enc/trans/japanese_sjis.c
compiling ./enc/windows_1250.c
compiling ./enc/windows_1251.c
compiling ./enc/windows_1252.c
Failed to configure dbm.  It will not be installed.
configuring io/console
configuring io/nonblock
configuring io/wait
configuring json
configuring json/generator
configuring json/parser
configuring mathn/complex
configuring mathn/rational
configuring nkf
configuring objspace
configuring openssl
configuring pathname
configuring psych
configuring pty
configuring racc/cparse
configuring rbconfig/sizeof
configuring readline
configuring ripper
configuring sdbm
configuring socket
configuring stringio
configuring strscan
configuring syslog
configuring thread
configuring tk
...........
check struct members..
check libraries....
Use ActiveTcl libraries (if available).
Search tclConfig.sh and tkConfig.sh..............................
Fail to find [tclConfig.sh, tkConfig.sh]
Use X11 libraries (or use TK_XINCLUDES/TK_XLIBSW information on tkConfig.sh).
Warning:: cannot find X11 library. tcltklib will not be compiled (tcltklib is disabled on your Ruby. That is, Ruby/Tk will not work). Please check configure options. If your Tcl/Tk don't require X11, please try --without-X11.
Can't find X11 libraries.
So, can't make tcltklib.so which is required by Ruby/Tk.
Failed to configure tk. It will not be installed.
Failed to configure tk/tkutil. It will not be installed.
configuring win32
Failed to configure win32. It will not be installed.
configuring win32ole
Failed to configure win32ole. It will not be installed.
configuring zlib
make[1]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling resize.c
compiling bug.c
compiling bug.c
compiling str2big.c
compiling init.c
compiling big2str.c
compiling mul.c
compiling div.c
linking shared-object -test-/bug-3571/bug.so
In file included from str2big.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
linking shared-object -test-/array/resize.so
In file included from big2str.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from mul.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from div.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
compiling bigzero.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/bug-3571'
linking shared-object -test-/bug-3662/bug.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/array/resize'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling bug.c
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling bug_reporter.c
compiling intpack.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/bug-3662'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling class2name.c
compiling init.c
In file included from bigzero.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
In file included from intpack.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
linking shared-object -test-/bug-5832/bug.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/bug-5832'
linking shared-object -test-/class.so
linking shared-object -test-/bug_reporter/bug_reporter.so
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling inspector.c
compiling profile_frames.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/class'
compiling init.c
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/bug_reporter'
linking shared-object -test-/bignum.so
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling empty.c
compiling dataerror.c
compiling init.c
compiling enc_raise.c
compiling ensured.c
linking shared-object -test-/dln/empty.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/bignum'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling rb_fatal.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/dln/empty'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling init.c
compiling fs.c
compiling stat.c
linking shared-object -test-/debug.so
linking shared-object -test-/exception.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/debug'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling init.c
compiling nextafter.c
linking shared-object -test-/fatal/rb_fatal.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/exception'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling passing_block.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/fatal'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling init.c
compiling delete.c
linking shared-object -test-/file.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/file'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
linking shared-object -test-/float.so
compiling iseq_load.c
linking shared-object -test-/funcall/funcall.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/float'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling break.c
compiling init.c
linking shared-object -test-/hash.so
compiling yield.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/funcall'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/hash'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling dot.dot.c
compiling usrcompat.c
linking shared-object -test-/iseq_load/iseq_load.so
linking shared-object -test-/load/dot.dot/dot.dot.so
linking shared-object -test-/iter.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/iseq_load'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling usrmarshal.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/load/dot.dot'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling init.c
compiling arity.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/iter'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling num2int.c
linking shared-object -test-/marshal/compat.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/marshal/compat'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling path_to_class.c
linking shared-object -test-/marshal/usr.so
linking shared-object -test-/method.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/marshal/usr'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling postponed_job.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/method'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling printf.c
linking shared-object -test-/num2int/num2int.so
linking shared-object -test-/path_to_class/path_to_class.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/num2int'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling init.c
compiling super.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/path_to_class'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling receiver.c
compiling rat.c
linking shared-object -test-/postponed_job.so
linking shared-object -test-/printf.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/postponed_job'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling recursion.c
In file included from rat.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/printf'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling foreach.c
linking shared-object -test-/proc.so
linking shared-object -test-/rational.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/proc'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling numhash.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/rational'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling update.c
linking shared-object -test-/recursion.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/recursion'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling nofree.c
compiling coderange.c
compiling ellipsize.c
compiling normalize.c
linking shared-object -test-/st/foreach.so
linking shared-object -test-/st/numhash.so
linking shared-object -test-/st/update.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/st/numhash'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling init.c
compiling duplicate.c
compiling init.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/st/update'
compiling member.c
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling type.c
compiling init.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/st/foreach'
In file included from normalize.c:1:
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling tracepoint.c
compiling qsort.c
compiling gc_hook.c
compiling set_len.c
compiling cstr.c
compiling enc_str_buf_cat.c
linking shared-object -test-/struct.so
linking shared-object -test-/symbol.so
compiling enc_associate.c
linking shared-object -test-/tracepoint.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/struct'
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/symbol'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling modify.c
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling typeddata.c
compiling at_exit.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/tracepoint'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling wait_for_single_fd.c
linking shared-object -test-/typeddata/typeddata.so
linking shared-object -test-/string/string.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/typeddata'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/win32/console'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/win32/dln'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/win32/fd_setsize'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling bigdecimal.c
linking shared-object -test-/vm/at_exit.so
installing default bigdecimal libraries
linking shared-object -test-/wait_for_single_fd/wait_for_single_fd.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/string'
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/vm'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling continuation.c
compiling coverage.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/-test-/wait_for_single_fd'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling date_core.c
compiling date_parse.c
compiling date_strftime.c
compiling date_strptime.c
In file included from ../../method.h:14,
                 from ../../vm_core.h:24,
                 from coverage.c:12:
../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
   84 | #if GCC_VERSION_SINCE(4, 6, 0) || __has_extension(c_static_assert)
      |                              ^
../../internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
linking shared-object continuation.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/continuation'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/dbm'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling digest.c
installing digest libraries
linking shared-object coverage.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/coverage'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling bubblebabble.c
installing default digest libraries
date_strftime.c: In function ‘date_strftime_with_tmx’:
date_strftime.c:573:14: warning: this statement may fall through [-Wimplicit-fallthrough=]
  573 |      padding = '0';
      |      ~~~~~~~~^~~~~
date_strftime.c:574:4: note: here
  574 |    case '1':  case '2': case '3': case '4':
      |    ^~~~
date_core.c: In function ‘datetime_s_jisx0301’:
date_core.c:8151:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 8151 |  str = rb_str_new2("-4712-01-01T00:00:00+00:00");
date_core.c:8152:7: note: here
 8152 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_httpdate’:
date_core.c:8121:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 8121 |  str = rb_str_new2("Mon, 01 Jan -4712 00:00:00 GMT");
date_core.c:8122:7: note: here
 8122 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_rfc2822’:
date_core.c:8091:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 8091 |  str = rb_str_new2("Mon, 1 Jan -4712 00:00:00 +0000");
date_core.c:8092:7: note: here
 8092 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_xmlschema’:
date_core.c:8060:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 8060 |  str = rb_str_new2("-4712-01-01T00:00:00+00:00");
date_core.c:8061:7: note: here
 8061 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_rfc3339’:
date_core.c:8030:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 8030 |  str = rb_str_new2("-4712-01-01T00:00:00+00:00");
date_core.c:8031:7: note: here
 8031 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_iso8601’:
date_core.c:8000:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 8000 |  str = rb_str_new2("-4712-01-01T00:00:00+00:00");
date_core.c:8001:7: note: here
 8001 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_parse’:
date_core.c:7960:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 7960 |  str = rb_str_new2("-4712-01-01T00:00:00+00:00");
date_core.c:7961:7: note: here
 7961 |       case 1:
      |       ^~~~
date_core.c:7962:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
 7962 |  comp = Qtrue;
date_core.c:7963:7: note: here
 7963 |       case 2:
      |       ^~~~
date_core.c: In function ‘datetime_s_strptime’:
date_core.c:7917:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 7917 |  str = rb_str_new2("-4712-01-01T00:00:00+00:00");
date_core.c:7918:7: note: here
 7918 |       case 1:
      |       ^~~~
date_core.c:7919:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 7919 |  fmt = rb_str_new2("%FT%T%z");
date_core.c:7920:7: note: here
 7920 |       case 2:
      |       ^~~~
date_core.c: In function ‘datetime_s_commercial’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:7480:2: note: in expansion of macro ‘val2sg’
 7480 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:7481:7: note: here
 7481 |       case 7:
      |       ^~~~
date_core.c:4689:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4689 |     if (!offset_to_sec(vof, &iof)) {\
      |        ^
date_core.c:7482:2: note: in expansion of macro ‘val2off’
 7482 |  val2off(vof, rof);
      |  ^~~~~~~
date_core.c:7483:7: note: here
 7483 |       case 6:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7484:2: note: in expansion of macro ‘num2int_with_frac’
 7484 |  num2int_with_frac(s, positive_inf);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7485:7: note: here
 7485 |       case 5:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7486:2: note: in expansion of macro ‘num2int_with_frac’
 7486 |  num2int_with_frac(min, 5);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7487:7: note: here
 7487 |       case 4:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7488:2: note: in expansion of macro ‘num2int_with_frac’
 7488 |  num2int_with_frac(h, 4);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7489:7: note: here
 7489 |       case 3:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7490:2: note: in expansion of macro ‘num2int_with_frac’
 7490 |  num2int_with_frac(d, 3);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7491:7: note: here
 7491 |       case 2:
      |       ^~~~
In file included from ../.././include/ruby.h:33,
                 from date_core.c:5:
../.././include/ruby/ruby.h:648:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  648 | #define NUM2INT(x) rb_num2int_inline(x)
      |                    ^~~~~~~~~~~~~~~~~~~~
date_core.c:7492:6: note: in expansion of macro ‘NUM2INT’
 7492 |  w = NUM2INT(vw);
      |      ^~~~~~~
date_core.c:7493:7: note: here
 7493 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_civil’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:7383:2: note: in expansion of macro ‘val2sg’
 7383 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:7384:7: note: here
 7384 |       case 7:
      |       ^~~~
date_core.c:4689:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4689 |     if (!offset_to_sec(vof, &iof)) {\
      |        ^
date_core.c:7385:2: note: in expansion of macro ‘val2off’
 7385 |  val2off(vof, rof);
      |  ^~~~~~~
date_core.c:7386:7: note: here
 7386 |       case 6:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7387:2: note: in expansion of macro ‘num2int_with_frac’
 7387 |  num2int_with_frac(s, positive_inf);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7388:7: note: here
 7388 |       case 5:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7389:2: note: in expansion of macro ‘num2int_with_frac’
 7389 |  num2int_with_frac(min, 5);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7390:7: note: here
 7390 |       case 4:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7391:2: note: in expansion of macro ‘num2int_with_frac’
 7391 |  num2int_with_frac(h, 4);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7392:7: note: here
 7392 |       case 3:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7393:2: note: in expansion of macro ‘num2int_with_frac’
 7393 |  num2int_with_frac(d, 3);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7394:7: note: here
 7394 |       case 2:
      |       ^~~~
In file included from ../.././include/ruby.h:33,
                 from date_core.c:5:
../.././include/ruby/ruby.h:648:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  648 | #define NUM2INT(x) rb_num2int_inline(x)
      |                    ^~~~~~~~~~~~~~~~~~~~
date_core.c:7395:6: note: in expansion of macro ‘NUM2INT’
 7395 |  m = NUM2INT(vm);
      |      ^~~~~~~
date_core.c:7396:7: note: here
 7396 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_ordinal’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:7306:2: note: in expansion of macro ‘val2sg’
 7306 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:7307:7: note: here
 7307 |       case 6:
      |       ^~~~
date_core.c:4689:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4689 |     if (!offset_to_sec(vof, &iof)) {\
      |        ^
date_core.c:7308:2: note: in expansion of macro ‘val2off’
 7308 |  val2off(vof, rof);
      |  ^~~~~~~
date_core.c:7309:7: note: here
 7309 |       case 5:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7310:2: note: in expansion of macro ‘num2int_with_frac’
 7310 |  num2int_with_frac(s, positive_inf);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7311:7: note: here
 7311 |       case 4:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7312:2: note: in expansion of macro ‘num2int_with_frac’
 7312 |  num2int_with_frac(min, 4);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7313:7: note: here
 7313 |       case 3:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7314:2: note: in expansion of macro ‘num2int_with_frac’
 7314 |  num2int_with_frac(h, 3);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7315:7: note: here
 7315 |       case 2:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7316:2: note: in expansion of macro ‘num2int_with_frac’
 7316 |  num2int_with_frac(d, 2);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7317:7: note: here
 7317 |       case 1:
      |       ^~~~
date_core.c: In function ‘datetime_s_jd’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:7237:2: note: in expansion of macro ‘val2sg’
 7237 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:7238:7: note: here
 7238 |       case 5:
      |       ^~~~
date_core.c:4689:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4689 |     if (!offset_to_sec(vof, &iof)) {\
      |        ^
date_core.c:7239:2: note: in expansion of macro ‘val2off’
 7239 |  val2off(vof, rof);
      |  ^~~~~~~
date_core.c:7240:7: note: here
 7240 |       case 4:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7241:2: note: in expansion of macro ‘num2int_with_frac’
 7241 |  num2int_with_frac(s, positive_inf);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7242:7: note: here
 7242 |       case 3:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7243:2: note: in expansion of macro ‘num2int_with_frac’
 7243 |  num2int_with_frac(min, 3);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7244:7: note: here
 7244 |       case 2:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:7245:2: note: in expansion of macro ‘num2int_with_frac’
 7245 |  num2int_with_frac(h, 2);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:7246:7: note: here
 7246 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_jisx0301’:
date_core.c:4624:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4624 |  str = rb_str_new2("-4712-01-01");
date_core.c:4625:7: note: here
 4625 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_httpdate’:
date_core.c:4583:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4583 |  str = rb_str_new2("Mon, 01 Jan -4712 00:00:00 GMT");
date_core.c:4584:7: note: here
 4584 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_rfc2822’:
date_core.c:4541:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4541 |  str = rb_str_new2("Mon, 1 Jan -4712 00:00:00 +0000");
date_core.c:4542:7: note: here
 4542 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_xmlschema’:
date_core.c:4497:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4497 |  str = rb_str_new2("-4712-01-01");
date_core.c:4498:7: note: here
 4498 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_rfc3339’:
date_core.c:4456:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4456 |  str = rb_str_new2("-4712-01-01T00:00:00+00:00");
date_core.c:4457:7: note: here
 4457 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_iso8601’:
date_core.c:4415:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4415 |  str = rb_str_new2("-4712-01-01");
date_core.c:4416:7: note: here
 4416 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_parse’:
date_core.c:4359:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4359 |  str = rb_str_new2("-4712-01-01");
date_core.c:4360:7: note: here
 4360 |       case 1:
      |       ^~~~
date_core.c:4361:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4361 |  comp = Qtrue;
date_core.c:4362:7: note: here
 4362 |       case 2:
      |       ^~~~
date_core.c: In function ‘date_s_strptime’:
date_core.c:4268:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4268 |  str = rb_str_new2("-4712-01-01");
date_core.c:4269:7: note: here
 4269 |       case 1:
      |       ^~~~
date_core.c:4270:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
 4270 |  fmt = rb_str_new2("%F");
date_core.c:4271:7: note: here
 4271 |       case 2:
      |       ^~~~
date_core.c: In function ‘date_s_commercial’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:3474:2: note: in expansion of macro ‘val2sg’
 3474 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:3475:7: note: here
 3475 |       case 3:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:3476:2: note: in expansion of macro ‘num2int_with_frac’
 3476 |  num2int_with_frac(d, positive_inf);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:3477:7: note: here
 3477 |       case 2:
      |       ^~~~
In file included from ../.././include/ruby.h:33,
                 from date_core.c:5:
../.././include/ruby/ruby.h:648:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  648 | #define NUM2INT(x) rb_num2int_inline(x)
      |                    ^~~~~~~~~~~~~~~~~~~~
date_core.c:3478:6: note: in expansion of macro ‘NUM2INT’
 3478 |  w = NUM2INT(vw);
      |      ^~~~~~~
date_core.c:3479:7: note: here
 3479 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_civil’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:3397:2: note: in expansion of macro ‘val2sg’
 3397 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:3398:7: note: here
 3398 |       case 3:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:3399:2: note: in expansion of macro ‘num2int_with_frac’
 3399 |  num2int_with_frac(d, positive_inf);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:3400:7: note: here
 3400 |       case 2:
      |       ^~~~
In file included from ../.././include/ruby.h:33,
                 from date_core.c:5:
../.././include/ruby/ruby.h:648:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
  648 | #define NUM2INT(x) rb_num2int_inline(x)
      |                    ^~~~~~~~~~~~~~~~~~~~
date_core.c:3401:6: note: in expansion of macro ‘NUM2INT’
 3401 |  m = NUM2INT(vm);
      |      ^~~~~~~
date_core.c:3402:7: note: here
 3402 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_ordinal’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:3328:2: note: in expansion of macro ‘val2sg’
 3328 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:3329:7: note: here
 3329 |       case 2:
      |       ^~~~
date_core.c:3217:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3217 |     if (f_nonzero_p(fr)) {\
      |        ^
date_core.c:3330:2: note: in expansion of macro ‘num2int_with_frac’
 3330 |  num2int_with_frac(d, positive_inf);
      |  ^~~~~~~~~~~~~~~~~
date_core.c:3331:7: note: here
 3331 |       case 1:
      |       ^~~~
date_core.c: In function ‘date_s_jd’:
date_core.c:3241:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
 3241 |     if (!c_valid_start_p(dsg)) {\
      |        ^
date_core.c:3276:2: note: in expansion of macro ‘val2sg’
 3276 |  val2sg(vsg, sg);
      |  ^~~~~~
date_core.c:3277:7: note: here
 3277 |       case 1:
      |       ^~~~
linking shared-object digest.so
linking shared-object digest/bubblebabble.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/digest/bubblebabble'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling md5init.c
compiling md5ossl.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/digest'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling rmd160init.c
compiling rmd160ossl.c
md5init.c:18:5: warning: cast between incompatible function types from ‘int (*)(MD5_CTX *, const void *, size_t)’ {aka ‘int (*)(struct MD5state_st *, const void *, long unsigned int)’} to ‘void (*)(void *, unsigned char *, size_t)’ {aka ‘void (*)(void *, unsigned char *, long unsigned int)’} [-Wcast-function-type]
   18 |     (rb_digest_hash_update_func_t)MD5_Update,
      |     ^
md5init.c:19:5: warning: cast between incompatible function types from ‘void (*)(MD5_CTX *, unsigned char *)’ {aka ‘void (*)(struct MD5state_st *, unsigned char *)’} to ‘int (*)(void *, unsigned char *)’ [-Wcast-function-type]
   19 |     (rb_digest_hash_finish_func_t)MD5_Finish,
      |     ^
linking shared-object digest/md5.so
rmd160init.c:18:5: warning: cast between incompatible function types from ‘int (*)(RIPEMD160_CTX *, const void *, size_t)’ {aka ‘int (*)(struct RIPEMD160state_st *, const void *, long unsigned int)’} to ‘void (*)(void *, unsigned char *, size_t)’ {aka ‘void (*)(void *, unsigned char *, long unsigned int)’} [-Wcast-function-type]
   18 |     (rb_digest_hash_update_func_t)RMD160_Update,
      |     ^
rmd160init.c:19:5: warning: cast between incompatible function types from ‘void (*)(RIPEMD160_CTX *, char *)’ {aka ‘void (*)(struct RIPEMD160state_st *, char *)’} to ‘int (*)(void *, unsigned char *)’ [-Wcast-function-type]
   19 |     (rb_digest_hash_finish_func_t)RMD160_Finish,
      |     ^
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/digest/md5'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling sha1init.c
compiling sha1ossl.c
linking shared-object digest/rmd160.so
sha1init.c:18:5: warning: cast between incompatible function types from ‘int (*)(SHA_CTX *, const void *, size_t)’ {aka ‘int (*)(struct SHAstate_st *, const void *, long unsigned int)’} to ‘void (*)(void *, unsigned char *, size_t)’ {aka ‘void (*)(void *, unsigned char *, long unsigned int)’} [-Wcast-function-type]
   18 |     (rb_digest_hash_update_func_t)SHA1_Update,
      |     ^
sha1init.c:19:5: warning: cast between incompatible function types from ‘void (*)(SHA_CTX *, char *)’ {aka ‘void (*)(struct SHAstate_st *, char *)’} to ‘int (*)(void *, unsigned char *)’ [-Wcast-function-type]
   19 |     (rb_digest_hash_finish_func_t)SHA1_Finish,
      |     ^
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/digest/rmd160'
installing default date_core libraries
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling sha2init.c
compiling sha2ossl.c
installing default sha2 libraries
linking shared-object digest/sha1.so
sha2init.c:21:5: warning: cast between incompatible function types from ‘int (*)(SHA256_CTX *, const void *, size_t)’ {aka ‘int (*)(struct SHA256state_st *, const void *, long unsigned int)’} to ‘void (*)(void *, unsigned char *, size_t)’ {aka ‘void (*)(void *, unsigned char *, long unsigned int)’} [-Wcast-function-type]
   21 |     (rb_digest_hash_update_func_t)SHA##bitlen##_Update, \
      |     ^
sha2init.c:12:30: note: in expansion of macro ‘DEFINE_ALGO_METADATA’
   12 | #define FOREACH_BITLEN(func) func(256) func(384) func(512)
      |                              ^~~~
sha2init.c:25:1: note: in expansion of macro ‘FOREACH_BITLEN’
   25 | FOREACH_BITLEN(DEFINE_ALGO_METADATA)
      | ^~~~~~~~~~~~~~
sha2init.c:22:5: warning: cast between incompatible function types from ‘void (*)(SHA256_CTX *, char *)’ {aka ‘void (*)(struct SHA256state_st *, char *)’} to ‘int (*)(void *, unsigned char *)’ [-Wcast-function-type]
   22 |     (rb_digest_hash_finish_func_t)SHA##bitlen##_Finish, \
      |     ^
sha2init.c:12:30: note: in expansion of macro ‘DEFINE_ALGO_METADATA’
   12 | #define FOREACH_BITLEN(func) func(256) func(384) func(512)
      |                              ^~~~
sha2init.c:25:1: note: in expansion of macro ‘FOREACH_BITLEN’
   25 | FOREACH_BITLEN(DEFINE_ALGO_METADATA)
      | ^~~~~~~~~~~~~~
sha2init.c:21:5: warning: cast between incompatible function types from ‘int (*)(SHA512_CTX *, const void *, size_t)’ {aka ‘int (*)(struct SHA512state_st *, const void *, long unsigned int)’} to ‘void (*)(void *, unsigned char *, size_t)’ {aka ‘void (*)(void *, unsigned char *, long unsigned int)’} [-Wcast-function-type]
   21 |     (rb_digest_hash_update_func_t)SHA##bitlen##_Update, \
      |     ^
sha2init.c:12:40: note: in expansion of macro ‘DEFINE_ALGO_METADATA’
   12 | #define FOREACH_BITLEN(func) func(256) func(384) func(512)
      |                                        ^~~~
sha2init.c:25:1: note: in expansion of macro ‘FOREACH_BITLEN’
   25 | FOREACH_BITLEN(DEFINE_ALGO_METADATA)
      | ^~~~~~~~~~~~~~
sha2init.c:22:5: warning: cast between incompatible function types from ‘void (*)(SHA384_CTX *, char *)’ {aka ‘void (*)(struct SHA512state_st *, char *)’} to ‘int (*)(void *, unsigned char *)’ [-Wcast-function-type]
   22 |     (rb_digest_hash_finish_func_t)SHA##bitlen##_Finish, \
      |     ^
sha2init.c:12:40: note: in expansion of macro ‘DEFINE_ALGO_METADATA’
   12 | #define FOREACH_BITLEN(func) func(256) func(384) func(512)
      |                                        ^~~~
sha2init.c:25:1: note: in expansion of macro ‘FOREACH_BITLEN’
   25 | FOREACH_BITLEN(DEFINE_ALGO_METADATA)
      | ^~~~~~~~~~~~~~
sha2init.c:21:5: warning: cast between incompatible function types from ‘int (*)(SHA512_CTX *, const void *, size_t)’ {aka ‘int (*)(struct SHA512state_st *, const void *, long unsigned int)’} to ‘void (*)(void *, unsigned char *, size_t)’ {aka ‘void (*)(void *, unsigned char *, long unsigned int)’} [-Wcast-function-type]
   21 |     (rb_digest_hash_update_func_t)SHA##bitlen##_Update, \
      |     ^
sha2init.c:12:50: note: in expansion of macro ‘DEFINE_ALGO_METADATA’
   12 | #define FOREACH_BITLEN(func) func(256) func(384) func(512)
      |                                                  ^~~~
sha2init.c:25:1: note: in expansion of macro ‘FOREACH_BITLEN’
   25 | FOREACH_BITLEN(DEFINE_ALGO_METADATA)
      | ^~~~~~~~~~~~~~
sha2init.c:22:5: warning: cast between incompatible function types from ‘void (*)(SHA512_CTX *, char *)’ {aka ‘void (*)(struct SHA512state_st *, char *)’} to ‘int (*)(void *, unsigned char *)’ [-Wcast-function-type]
   22 |     (rb_digest_hash_finish_func_t)SHA##bitlen##_Finish, \
      |     ^
sha2init.c:12:50: note: in expansion of macro ‘DEFINE_ALGO_METADATA’
   12 | #define FOREACH_BITLEN(func) func(256) func(384) func(512)
      |                                                  ^~~~
sha2init.c:25:1: note: in expansion of macro ‘FOREACH_BITLEN’
   25 | FOREACH_BITLEN(DEFINE_ALGO_METADATA)
      | ^~~~~~~~~~~~~~
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/digest/sha1'
linking shared-object digest/sha2.so
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
generating constant definitions
compiling etc.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/digest/sha2'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling fcntl.c
linking shared-object fcntl.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fcntl'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling fiber.c
linking shared-object fiber.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiber'
linking shared-object etc.so
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling function.c
compiling conversions.c
compiling closure.c
compiling pointer.c
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/etc'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/gdbm'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling console.c
installing default console libraries
compiling handle.c
compiling fiddle.c
make[3]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle'
make[3]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make 'AR_FLAGS=' 'CC_FOR_BUILD=' 'CFLAGS=-O3 -fno-fast-math -ggdb3  -Wall -fexceptions' 'CXXFLAGS=-O3 -fno-fast-math -ggdb3 ' 'CFLAGS_FOR_BUILD=' 'CFLAGS_FOR_TARGET=' 'INSTALL=/usr/bin/install -c' 'INSTALL_DATA=/usr/bin/install -c -m 644' 'INSTALL_PROGRAM=/usr/bin/install -c' 'INSTALL_SCRIPT=/usr/bin/install -c' 'JC1FLAGS=' 'LDFLAGS=-L. -L/home/ankit/.rbenv/versions/2.2.10/lib  -fstack-protector -rdynamic -Wl,-export-dynamic  -L../../.. ' 'LIBCFLAGS=' 'LIBCFLAGS_FOR_TARGET=' 'MAKE=make' 'MAKEINFO=/bin/bash /tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1/missing makeinfo ' 'PICFLAG=' 'PICFLAG_FOR_TARGET=' 'RUNTESTFLAGS=' 'SHELL=/bin/bash' 'exec_prefix=/usr/local' 'infodir=/usr/local/share/info' 'libdir=/home/ankit/.rbenv/versions/2.2.10/lib' 'mandir=/usr/local/share/man' 'prefix=/usr/local' 'AR=ar' 'AS=as' 'CC=gcc' 'CXX=g++' 'LD=ld -m elf_x86_64' 'NM=nm' 'RANLIB=ranlib' 'DESTDIR=' all-recursive
make[4]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1'
Making all in include
make[5]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1/include'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1/include'
Making all in testsuite
make[5]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1/testsuite'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1/testsuite'
Making all in man
make[5]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1/man'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1/man'
make[5]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/fiddle/libffi-3.2.1'
installing default fiddle libraries
linking shared-object io/console.so
  CC       src/prep_cif.lo
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/io/console'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling nonblock.c
linking shared-object io/nonblock.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/io/nonblock'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling wait.c
  CC       src/types.lo
  CC       src/raw_api.lo
linking shared-object io/wait.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/io/wait'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
installing default libraries
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/json'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling generator.c
generator.c: In function ‘convert_UTF8_to_JSON_ASCII’:
generator.c:148:41: warning: this statement may fall through [-Wimplicit-fallthrough=]
  148 |             case 5: ch += *source++; ch <<= 6; /* remember, illegal UTF-8 */
      |                                      ~~~^~~~~
generator.c:149:13: note: here
  149 |             case 4: ch += *source++; ch <<= 6; /* remember, illegal UTF-8 */
      |             ^~~~
generator.c:149:41: warning: this statement may fall through [-Wimplicit-fallthrough=]
  149 |             case 4: ch += *source++; ch <<= 6; /* remember, illegal UTF-8 */
      |                                      ~~~^~~~~
generator.c:150:13: note: here
  150 |             case 3: ch += *source++; ch <<= 6;
      |             ^~~~
generator.c:150:41: warning: this statement may fall through [-Wimplicit-fallthrough=]
  150 |             case 3: ch += *source++; ch <<= 6;
      |                                      ~~~^~~~~
generator.c:151:13: note: here
  151 |             case 2: ch += *source++; ch <<= 6;
      |             ^~~~
generator.c:151:41: warning: this statement may fall through [-Wimplicit-fallthrough=]
  151 |             case 2: ch += *source++; ch <<= 6;
      |                                      ~~~^~~~~
generator.c:152:13: note: here
  152 |             case 1: ch += *source++; ch <<= 6;
      |             ^~~~
generator.c:152:41: warning: this statement may fall through [-Wimplicit-fallthrough=]
  152 |             case 1: ch += *source++; ch <<= 6;
      |                                      ~~~^~~~~
generator.c:153:13: note: here
  153 |             case 0: ch += *source++;
      |             ^~~~
generator.c: In function ‘isLegalUTF8’:
generator.c:86:46: warning: this statement may fall through [-Wimplicit-fallthrough=]
   86 |         case 4: if ((a = (*--srcptr)) < 0x80 || a > 0xBF) return 0;
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
generator.c:87:9: note: here
   87 |         case 3: if ((a = (*--srcptr)) < 0x80 || a > 0xBF) return 0;
      |         ^~~~
generator.c:87:46: warning: this statement may fall through [-Wimplicit-fallthrough=]
   87 |         case 3: if ((a = (*--srcptr)) < 0x80 || a > 0xBF) return 0;
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
generator.c:88:9: note: here
   88 |         case 2: if ((a = (*--srcptr)) > 0xBF) return 0;
      |         ^~~~
generator.c:90:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
   90 |                     switch (*source) {
      |                     ^~~~~~
generator.c:99:9: note: here
   99 |         case 1: if (*source >= 0x80 && *source < 0xC2) return 0;
      |         ^~~~
  CC       src/java_raw_api.lo
  CC       src/closures.lo
src/closures.c: In function 'dlmmap_locked':
src/closures.c:488:7: warning: ignoring return value of 'ftruncate', declared with attribute warn_unused_result [-Wunused-result]
  488 |       ftruncate (execfd, offset);
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~
src/closures.c:500:7: warning: ignoring return value of 'ftruncate', declared with attribute warn_unused_result [-Wunused-result]
  500 |       ftruncate (execfd, offset);
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~
linking shared-object bigdecimal.so
make[2]: Leaving directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10/ext/bigdecimal'
make[2]: Entering directory '/tmp/ruby-build.20200518193720.118097.NYVlMg/ruby-2.2.10'
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
compiling parser.c
parser.c: In function ‘cParser_parse_quirks_mode’:
parser.c:1960:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 1960 |  if ( ++p == pe )
      |     ^
parser.c:1962:1: note: here
 1962 | case 1:
      | ^~~~
parser.rl:795:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  795 |             begin_value >parse_value
      |     ^
parser.rl:797:1: note: here
  797 | }%%
      | ^~~
parser.c:2007:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2007 |  if ( ++p == pe )
      |     ^
parser.c:2009:1: note: here
 2009 | case 2:
      | ^~~~
parser.c:2016:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2016 |  if ( ++p == pe )
      |     ^
parser.c:2018:1: note: here
 2018 | case 3:
      | ^~~~
parser.c:2023:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2023 |  if ( ++p == pe )
      |     ^
parser.c:2025:1: note: here
 2025 | case 4:
      | ^~~~
parser.c:2032:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2032 |  if ( ++p == pe )
      |     ^
parser.c:2034:1: note: here
 2034 | case 5:
      | ^~~~
parser.c:2039:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2039 |  if ( ++p == pe )
      |     ^
parser.c:2041:1: note: here
 2041 | case 6:
      | ^~~~
parser.c:2048:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2048 |  if ( ++p == pe )
      |     ^
parser.c:2050:1: note: here
 2050 | case 7:
      | ^~~~
parser.c:2055:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2055 |  if ( ++p == pe )
      |     ^
parser.c:2057:1: note: here
 2057 | case 8:
      | ^~~~
parser.c:2064:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
 2064 |  if ( ++p == pe )
      |     ^
parser.c:2066:1: note: here
 2066 | case 9:
      | ^~~~
parser.c: In function ‘JSON_parse_value’:
parser.rl:227:5: warning: this statement may fall through [-Wimplicit-fallthrough=]