Skip to content

Instantly share code, notes, and snippets.

@minimum2scp
Last active August 20, 2017 17:34
Show Gist options
  • Save minimum2scp/c460d02bd2f87b1987be07322ed74dbb to your computer and use it in GitHub Desktop.
Save minimum2scp/c460d02bd2f87b1987be07322ed74dbb to your computer and use it in GitHub Desktop.
sid で Ruby 2.3.4 をビルドしようとすると"generating enc.mk"のあとsegvする (https://twitter.com/minimum2scp/status/899301437896744961)
tsuyoshi@mira% tar xf ruby-2.3.4.tar.gz
tsuyoshi@mira% cd ruby-2.3.4
tsuyoshi@mira% ./configure
checking for ruby... /opt/rbenv/shims/ruby
config.guess already exists
config.sub already exists
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking whether gcc needs -traditional... no
checking for ld... ld
checking whether the linker is GNU ld... yes
checking whether gcc -E accepts -o... yes
checking for ranlib... ranlib
checking for ar... ar
checking for as... as
checking for objdump... objdump
checking for objcopy... objcopy
checking for nm... nm
checking whether ln -s works... yes
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for dtrace... no
checking for dot... dot
checking for doxygen... no
checking for pkg-config... pkg-config
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for cd using physical directory... cd -P
checking whether CFLAGS is valid... yes
checking whether LDFLAGS is valid... yes
checking whether -Wno-unused-parameter is accepted as CFLAGS... yes
checking whether -Wno-parentheses is accepted as CFLAGS... yes
checking whether -Wno-long-long is accepted as CFLAGS... yes
checking whether -diag-disable=2259 is accepted as CFLAGS... no
checking whether -Wno-missing-field-initializers is accepted as CFLAGS... yes
checking whether -Wunused-variable is accepted as CFLAGS... yes
checking whether -Wpointer-arith is accepted as CFLAGS... yes
checking whether -Wwrite-strings is accepted as CFLAGS... yes
checking whether -Wdeclaration-after-statement is accepted as CFLAGS... yes
checking whether -Wshorten-64-to-32 is accepted as CFLAGS... no
checking whether -Wimplicit-function-declaration is accepted as CFLAGS... yes
checking whether -Wdivision-by-zero is accepted as CFLAGS... no
checking whether -Wdeprecated-declarations is accepted as CFLAGS... yes
checking whether -Wno-packed-bitfield-compat is accepted as CFLAGS... yes
checking whether -Wextra-tokens is accepted as CFLAGS... no
checking whether -Wall -Wextra is accepted as CFLAGS... yes
checking whether -Qunused-arguments is accepted as CFLAGS... no
checking whether INFINITY is available without C99 option... yes
checking whether NAN is available without C99 option... yes
checking whether -D_FORTIFY_SOURCE=2 is accepted as CFLAGS... yes
checking whether -fstack-protector is accepted as CFLAGS... yes
checking whether -fstack-protector is accepted as LDFLAGS... yes
checking whether -std=iso9899:1999 is accepted as CFLAGS... yes
checking whether -fno-strict-overflow is accepted as CFLAGS... yes
checking whether -ggdb3 is accepted as CFLAGS... yes
checking whether -fvisibility=hidden is accepted as CFLAGS... yes
checking whether -fno-fast-math is accepted as CFLAGS... yes
checking whether -fp-model precise is accepted as CFLAGS... no
checking for crypt in -lcrypt... yes
checking for dlopen in -ldl... yes
checking for shl_load in -ldld... no
checking for shutdown in -lsocket... no
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking a.out.h usability... yes
checking a.out.h presence... yes
checking for a.out.h... yes
checking atomic.h usability... no
checking atomic.h presence... no
checking for atomic.h... no
checking direct.h usability... no
checking direct.h presence... no
checking for direct.h... no
checking grp.h usability... yes
checking grp.h presence... yes
checking for grp.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking float.h usability... yes
checking float.h presence... yes
checking for float.h... yes
checking ieeefp.h usability... no
checking ieeefp.h presence... no
checking for ieeefp.h... no
checking intrinsics.h usability... no
checking intrinsics.h presence... no
checking for intrinsics.h... no
checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking malloc/malloc.h usability... no
checking malloc/malloc.h presence... no
checking for malloc/malloc.h... no
checking malloc_np.h usability... no
checking malloc_np.h presence... no
checking for malloc_np.h... no
checking net/socket.h usability... no
checking net/socket.h presence... no
checking for net/socket.h... no
checking process.h usability... no
checking process.h presence... no
checking for process.h... no
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking setjmpex.h usability... no
checking setjmpex.h presence... no
checking for setjmpex.h... no
checking sys/attr.h usability... no
checking sys/attr.h presence... no
checking for sys/attr.h... no
checking sys/fcntl.h usability... yes
checking sys/fcntl.h presence... yes
checking for sys/fcntl.h... yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/id.h usability... no
checking sys/id.h presence... no
checking for sys/id.h... no
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/mkdev.h usability... no
checking sys/mkdev.h presence... no
checking for sys/mkdev.h... no
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/prctl.h usability... yes
checking sys/prctl.h presence... yes
checking for sys/prctl.h... yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/sendfile.h usability... yes
checking sys/sendfile.h presence... yes
checking for sys/sendfile.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/syscall.h usability... yes
checking sys/syscall.h presence... yes
checking for sys/syscall.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/times.h usability... yes
checking sys/times.h presence... yes
checking for sys/times.h... yes
checking sys/uio.h usability... yes
checking sys/uio.h presence... yes
checking for sys/uio.h... yes
checking sys/utime.h usability... no
checking sys/utime.h presence... no
checking for sys/utime.h... no
checking syscall.h usability... yes
checking syscall.h presence... yes
checking for syscall.h... yes
checking time.h usability... yes
checking time.h presence... yes
checking for time.h... yes
checking ucontext.h usability... yes
checking ucontext.h presence... yes
checking for ucontext.h... yes
checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
checking gmp.h usability... yes
checking gmp.h presence... yes
checking for gmp.h... yes
checking for __gmpz_init in -lgmp... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking whether char is unsigned... no
checking for inline... inline
checking for working volatile... yes
checking for typeof syntax and keyword spelling... __typeof__
checking for long long... yes
checking for off_t... yes
checking char bit... 8
checking size of int... 4
checking size of short... 2
checking size of long... 8
checking size of long long... 8
checking size of __int64... 0
checking size of off_t... 8
checking size of void*... 8
checking size of float... 4
checking size of double... 8
checking size of time_t... 8
checking size of clock_t... 8
checking packed struct attribute... x __attribute__((packed))
checking for printf prefix for long long... ll
checking for pid_t... yes
checking for convertible type of pid_t... 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 DEPRECATED_BY function attribute... __attribute__ ((deprecated("by "#n))) x
checking for DEPRECATED_TYPE type attribute... __attribute__ ((deprecated mesg)) x
checking for NOINLINE function attribute... __attribute__ ((noinline)) x
checking for WEAK function attribute... __attribute__ ((weak)) x
checking for stdcall function attribute... x
checking for cdecl function attribute... x
checking for fastcall function attribute... x
checking for FUNC_UNOPTIMIZED function attribute... __attribute__ ((optimize("O0"))) 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 if enum over int is allowed... yes
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 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 explicit_bzero... no
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 broken memmem... no
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 memset_s... no
checking for writev... yes
checking for memrchr... yes
checking for memmem... yes
checking for mkfifo... yes
checking for mknod... 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_set_name_np... no
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 whether wrapper for LD_LIBRARY_PATH is needed... no
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 nroff... /usr/bin/nroff
.ext/include/x86_64-linux/ruby/config.h updated
configure: ruby library version = 2.3.0
configure: creating ./config.status
config.status: creating GNUmakefile
config.status: creating Makefile
config.status: creating ruby-2.3.pc
tsuyoshi@mira% make -j4
	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. -I.ext/include/x86_64-linux -I./include -I.
	DLDFLAGS = -fstack-protector -pie  
	SOLIBS = -lgmp 
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 7.2.0-1' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --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 --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --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 --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 7.2.0 (Debian 7.2.0-1) 
copying dummy probes.h
compiling main.c
compiling dmydln.c
compiling miniinit.c
compiling dmyext.c
compiling miniprelude.c
compiling array.c
compiling bignum.c
compiling class.c
compiling compar.c
In file included from array.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 bignum.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:1532:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
      if (!rb_equal(e, val)) break;
         ^
array.c:1533:4: note: here
    case Qtrue:
    ^~~~
array.c: In function ‘rb_ary_index’:
array.c:1469:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
      if (!rb_equal(e, val)) break;
         ^
array.c:1470:4: note: here
    case Qtrue:
    ^~~~
compiling complex.c
In file included from complex.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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_get_index’:
encoding.c:793:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (NIL_P(obj)) break;
     ^
encoding.c:794:7: note: here
       case T_DATA:
       ^~~~
encoding.c: In function ‘enc_capable’:
encoding.c:746:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (is_data_encoding(obj)) return TRUE;
     ^
encoding.c:747:7: note: here
       default:
       ^~~~~~~
compiling enum.c
In file included from enum.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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
In file included from error.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 eval.c
In file included from eval.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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]
eval.c: In function ‘rb_raise_jump’:
eval.c:763:8: warning: unused variable ‘mid’ [-Wunused-variable]
     ID mid = me->called_id;
        ^~~
compiling load.c
In file included from load.c:5:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:922:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (ft) {
     ^
load.c:927:7: note: here
       case 1:
       ^~~~
compiling proc.c
In file included from method.h:14:0,
                 from vm_core.h:62,
                 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]
 #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
In file included from file.c:26:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 gc.c
In file included from gc.c:17:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 hash.c
In file included from hash.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:658:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
       val = RARRAY_AREF(v, 1);
hash.c:659:5: note: here
     case 1:
     ^~~~
compiling inits.c
In file included from inits.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:6274:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
  pmode = argv[1];
  ~~~~~~^~~~~~~~~
io.c:6275:7: note: here
       case 1:
       ^~~~
compiling marshal.c
In file included from marshal.c:16:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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]
marshal.c: In function ‘r_object0’:
marshal.c:1749:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
    if (bs & 1) --dst;
       ^
marshal.c:1750:9: note: here
         default: bs = 0; break;
         ^~~~~~~
marshal.c: In function ‘load_mantissa’:
marshal.c:365:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
        default: m = *buf++ & 0xff;
                 ~~^~~~~~~~~~~~~~~
marshal.c:367:8: note: here
        case 3: m = (m << 8) | (*buf++ & 0xff);
        ^~~~
marshal.c:367:18: warning: this statement may fall through [-Wimplicit-fallthrough=]
        case 3: m = (m << 8) | (*buf++ & 0xff);
                ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
marshal.c:370:8: note: here
        case 2: m = (m << 8) | (*buf++ & 0xff);
        ^~~~
marshal.c:370:18: warning: this statement may fall through [-Wimplicit-fallthrough=]
        case 2: m = (m << 8) | (*buf++ & 0xff);
                ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
marshal.c:373:8: note: here
        case 1: m = (m << 8) | (*buf++ & 0xff);
        ^~~~
compiling math.c
In file included from math.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0,
                 from vm_core.h:62,
                 from node.c:13:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 pack.c
object.c: In function ‘rb_f_integer’:
object.c:2740:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  base = NUM2INT(argv[1]);
object.c:2741:7: note: here
       case 1:
       ^~~~
In file included from pack.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:27:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:3993:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
        node = NEW_NODE(NODE_DSTR, STR_NEW0(), 1, NEW_LIST(node));
parse.y:3994:6: note: here
      case NODE_DSTR:
      ^~~~
parse.y:340:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define yyerror(msg) parser_yyerror(parser, (msg))
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
parse.y:5014:5: note: in expansion of macro ‘yyerror’
     yyerror("can't define singleton method for literals");
     ^~~~~~~
parse.y:5015:10: note: here
          default:
          ^~~~~~~
parse.y: In function ‘parser_yylex’:
parse.y:8223:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
   if (peek('.') == (c == '&')) {
      ^
parse.y:8229:8: note: here
        default:
        ^~~~~~~
parse.y:8231:16: warning: this statement may fall through [-Wimplicit-fallthrough=]
   lex_nextline = lex_lastline;
parse.y:8232:8: note: here
        case -1:  /* EOF no decrement*/
        ^~~~
parse.y:8577:12: warning: this statement may fall through [-Wimplicit-fallthrough=]
  paren_nest--;
parse.y:8578:7: note: here
       case '}':
       ^~~~
parse.y: In function ‘parser_here_document’:
parse.y:6887:23: warning: this statement may fall through [-Wimplicit-fallthrough=]
       if (--pend == p || pend[-1] != '\r') {
           ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
parse.y:6891:5: note: here
     case '\r':
     ^~~~
parse.y: In function ‘parser_read_escape’:
parse.y:6038:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if ((c = nextc()) != '-') {
     ^
parse.y:6042:7: note: here
       case 'c':
       ^~~~
parse.y: In function ‘parse_gvar’:
parse.y:7945:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (!parser_is_identchar()) {
      ^
parse.y:7955:7: note: here
       case '0':
       ^~~~
parse.y: In function ‘is_static_content’:
parse.y:9760:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (!(node = node->nd_head)) break;
     ^
parse.y:9761:7: note: here
       case NODE_ARRAY:
       ^~~~
compiling process.c
compiling random.c
In file included from process.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:62:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:1448:0:
siphash.c: In function ‘ruby_sip_hash24’:
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:444:6: note: in expansion of macro ‘OR_BYTE’
      OR_BYTE(6);
      ^~~~~~~
siphash.c:445:2: note: here
  case 6:
  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:446:6: note: in expansion of macro ‘OR_BYTE’
      OR_BYTE(5);
      ^~~~~~~
siphash.c:447:2: note: here
  case 5:
  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:448:6: note: in expansion of macro ‘OR_BYTE’
      OR_BYTE(4);
      ^~~~~~~
siphash.c:449:2: note: here
  case 4:
  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:461:6: note: in expansion of macro ‘OR_BYTE’
      OR_BYTE(2);
      ^~~~~~~
siphash.c:462:2: note: here
  case 2:
  ^~~~
siphash.c:430:26: warning: this statement may fall through [-Wimplicit-fallthrough=]
 #define OR_BYTE(n) (last |= ((uint64_t) end[n]) << ((n) * 8))
                    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siphash.c:463:6: note: in expansion of macro ‘OR_BYTE’
      OR_BYTE(1);
      ^~~~~~~
siphash.c:464:2: note: here
  case 1:
  ^~~~
random.c: In function ‘rand_range’:
random.c:1221:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
       case T_FLOAT: {
                     ^
random.c:1227:7: note: here
       default:
       ^~~~~~~
random.c: In function ‘random_load’:
random.c:747:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  seed = ary[2];
  ~~~~~^~~~~~~~
random.c:748:7: note: here
       case 2:
       ^~~~
random.c:749:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
  left = ary[1];
  ~~~~~^~~~~~~~
random.c:750:7: note: here
       case 1:
       ^~~~
compiling range.c
In file included from range.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:2310:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
                 {
                 ^
re.c:2321:15: note: here
               case '0': /* \0, \0O, \0OO */
               ^~~~
re.c: In function ‘read_escaped_byte’:
re.c:2083:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
         if (p == end || *p++ != '-') {
             ~~~~~~~~~^~~~~~~~~~~~~~
re.c:2087:7: note: here
       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=]
       if (IS_SYNTAX_OP2(env->syntax, ONIG_SYN_OP2_OPTION_PERL)) {
          ^
regparse.c:5211:5: note: here
     case '-': case 'i': case 'm': case 's': case 'x':
     ^~~~
compiling regsyntax.c
compiling ruby.c
In file included from ruby.c:18:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:856:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
      opt->do_print = TRUE;
ruby.c:858:4: note: here
    case 'n':
    ^~~~
ruby.c:882:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
      opt->verbose = 1;
      ~~~~~~~~~~~~~^~~
ruby.c:883:4: note: here
    case 'w':
    ^~~~
ruby.c:1194:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
      if (!s[1])
         ^
ruby.c:1197:4: note: here
    default:
    ^~~~~~~
compiling safe.c
In file included from method.h:14:0,
                 from vm_core.h:62,
                 from safe.c:20:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 signal.c
In file included from signal.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 sprintf.c
In file included from sprintf.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 st.c
sprintf.c: In function ‘rb_str_format’:
sprintf.c:661:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
      p--;
      ~^~
sprintf.c:662:4: note: here
    case '%':
    ^~~~
In file included from sprintf.c:1278:0:
vsnprintf.c: In function ‘BSD_vfprintf’:
vsnprintf.c:886:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
    if (prec != 0)
       ^
vsnprintf.c:888:3: note: here
   case 'g':
   ^~~~
In file included from st.c:9:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:1561:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
  t |= data_at(n) << CHAR_BIT*(n)
  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1463:25: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                         ^~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1560:27: note: here
 # define UNALIGNED_ADD(n) case (n) + 1: \
                           ^
st.c:1463:43: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                           ^~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1561:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
  t |= data_at(n) << CHAR_BIT*(n)
  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1463:43: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                           ^~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1560:27: note: here
 # define UNALIGNED_ADD(n) case (n) + 1: \
                           ^
st.c:1463:61: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                             ^~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1561:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
  t |= data_at(n) << CHAR_BIT*(n)
  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1463:61: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                             ^~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1560:27: note: here
 # define UNALIGNED_ADD(n) case (n) + 1: \
                           ^
st.c:1463:79: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                                               ^~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1561:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
  t |= data_at(n) << CHAR_BIT*(n)
  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1463:79: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                                               ^~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1560:27: note: here
 # define UNALIGNED_ADD(n) case (n) + 1: \
                           ^
st.c:1461:25: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
                         ^~~~~~~~~~~~~
st.c:1463:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                                                                 ^~~~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1561:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
  t |= data_at(n) << CHAR_BIT*(n)
  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1461:25: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
                         ^~~~~~~~~~~~~
st.c:1463:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                                                                 ^~~~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1560:27: note: here
 # define UNALIGNED_ADD(n) case (n) + 1: \
                           ^
st.c:1461:43: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
                                           ^~~~~~~~~~~~~
st.c:1463:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                                                                 ^~~~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1561:4: warning: this statement may fall through [-Wimplicit-fallthrough=]
  t |= data_at(n) << CHAR_BIT*(n)
  ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
st.c:1461:43: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
                                           ^~~~~~~~~~~~~
st.c:1463:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                                                                 ^~~~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  UNALIGNED_ADD_ALL;
  ^~~~~~~~~~~~~~~~~
st.c:1560:27: note: here
 # define UNALIGNED_ADD(n) case (n) + 1: \
                           ^
st.c:1461:61: note: in expansion of macro ‘UNALIGNED_ADD’
 #define UNALIGNED_ADD_4 UNALIGNED_ADD(2); UNALIGNED_ADD(1); UNALIGNED_ADD(0)
                                                             ^~~~~~~~~~~~~
st.c:1463:97: note: in expansion of macro ‘UNALIGNED_ADD_4’
 #define UNALIGNED_ADD_8 UNALIGNED_ADD(6); UNALIGNED_ADD(5); UNALIGNED_ADD(4); UNALIGNED_ADD(3); UNALIGNED_ADD_4
                                                                                                 ^~~~~~~~~~~~~~~
st.c:1469:27: note: in expansion of macro ‘UNALIGNED_ADD_8’
 #define UNALIGNED_ADD_ALL UNALIGNED_ADD_8
                           ^~~~~~~~~~~~~~~
st.c:1563:2: note: in expansion of macro ‘UNALIGNED_ADD_ALL’
  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=]
    padding = '0';
    ~~~~~~~~^~~~~
strftime.c:781:3: note: here
   case '1':  case '2': case '3': case '4':
   ^~~~
compiling string.c
In file included from string.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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
compiling symbol.c
In file included from struct.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 symbol.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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
compiling transcode.c
In file included from time.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:2092:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
      n += (s[7] * 10 + s[8] - '0' * 11);
      ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
time.c:2093:4: note: here
    case 6:
    ^~~~
In file included from transcode.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:2006:18: warning: this statement may fall through [-Wimplicit-fallthrough=]
             sign = 1;
             ~~~~~^~~
util.c:2008:11: note: here
           case '+':
           ^~~~
util.c:2169:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
             esign = 1;
             ~~~~~~^~~
util.c:2170:11: note: here
           case '+':
           ^~~~
util.c: In function ‘ruby_dtoa’:
util.c:3344:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
         leftright = 0;
         ~~~~~~~~~~^~~
util.c:3346:7: note: here
       case 4:
       ^~~~
util.c:3352:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
         leftright = 0;
         ~~~~~~~~~~^~~
util.c:3354:7: note: here
       case 5:
       ^~~~
compiling variable.c
In file included from variable.c:14:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 version.c
compiling compile.c
In file included from compile.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 debug.c
compile.c: In function ‘iseq_compile_each’:
compile.c:4560:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
      boff = 1;
      ~~~~~^~~
compile.c:4561:4: note: here
    default:
    ^~~~~~~
compile.c:5015:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
      flag |= VM_CALL_VCALL;
compile.c:5017:4: note: here
    case NODE_FCALL:
    ^~~~
compile.c:4018:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (node->nd_var) {
     ^
compile.c:4044:7: note: here
       case NODE_ITER:{
       ^~~~
compile.c:4886:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (node->nd_mid == idAREF && !private_recv_p(node) && node->nd_args &&
     ^
compile.c:4902:7: note: here
       case NODE_QCALL:
       ^~~~
In file included from method.h:14:0,
                 from vm_core.h:62,
                 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]
 #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 ‘defined_expr0’:
compile.c:3329:23: warning: this statement may fall through [-Wimplicit-fallthrough=]
       case NODE_ARRAY:{
                       ^
compile.c:3341:7: note: here
       case NODE_STR:
       ^~~~
compile.c: In function ‘iseq_peephole_optimize’:
compile.c:2251:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
       piobj = iobj;
       ~~~~~~^~~~~~
compile.c:2252:5: note: here
     default:
     ^~~~~~~
compiling iseq.c
In file included from iseq.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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]
iseq.c: In function ‘rb_insn_operand_intern’:
iseq.c:1279:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  op = ID2SYM(op);
iseq.c:1281:7: note: here
       case TS_VALUE:  /* VALUE */
       ^~~~
compiling vm.c
In file included from vm.c:15:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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:201:0:
vm_insnhelper.c: In function ‘check_method_entry’:
vm_insnhelper.c:389:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (can_be_svar) {
     ^
vm_insnhelper.c:392:7: note: here
       default:
       ^~~~~~~
In file included from vm_exec.c:120:0,
                 from vm.c:203:
insns.def: In function ‘vm_exec_core’:
insns.def:1262:21: warning: this statement may fall through [-Wimplicit-fallthrough=]
       case T_FLOAT: {
                     ^
insns.def:1268:7: note: here
       case T_TRUE:
       ^~~~
In file included from vm.c:201:0:
vm_insnhelper.c: In function ‘vm_defined’:
vm_insnhelper.c:2591:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
   if (!rb_obj_is_kind_of(GET_SELF(), rb_class_real(klass))) {
      ^
vm_insnhelper.c:2594:8: note: here
        case METHOD_VISI_PUBLIC:
        ^~~~
In file included from vm.c:201:0:
vm_insnhelper.c: In function ‘check_cref’:
vm_insnhelper.c:440:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (can_be_svar) {
     ^
vm_insnhelper.c:443:7: note: here
       default:
       ^~~~~~~
In file included from vm.c:206:0:
vm_eval.c: In function ‘singleton_class_for_eval’:
vm_eval.c:1671:5: warning: this statement may fall through [-Wimplicit-fallthrough=]
  if (FL_TEST_RAW(self, RSTRING_FSTR)) return Qnil;
     ^
vm_eval.c:1672:7: note: here
       default:
       ^~~~~~~
In file included from vm.c:201:0:
vm_insnhelper.c: In function ‘cref_replace_with_duplicated_cref_each_frame’:
vm_insnhelper.c:510:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
      if (can_be_svar) {
         ^
vm_insnhelper.c:513:4: note: here
    case imemo_ment:
    ^~~~
compiling vm_dump.c
In file included from vm_dump.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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
In file included from vm_backtrace.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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_trace.c
In file included from vm_trace.c:24:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 thread.c
In file included from method.h:14:0,
                 from vm_core.h:62,
                 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]
 #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:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 ./missing/explicit_bzero.c
compiling ./missing/setproctitle.c
compiling ./missing/strlcat.c
compiling ./missing/strlcpy.c
compiling addr2line.c
addr2line.c: In function ‘kvprintf’:
addr2line.c:960:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
    if (!dot) {
       ^
addr2line.c:964:3: note: here
   case '1': case '2': case '3': case '4':
   ^~~~
addr2line.c:1100:10: warning: this statement may fall through [-Wimplicit-fallthrough=]
    upper = 1;
    ~~~~~~^~~
addr2line.c:1101:3: note: here
   case 'x':
   ^~~~
In function ‘iseq_build_kw.isra.59’,
    inlined from ‘rb_iseq_build_from_ary’ at compile.c:6690:30:
compile.c:6590:9: warning: argument 1 range [18446744071562067968, 18446744073709551615] exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
     dvs = ALLOC_N(VALUE, default_len);
In file included from ./include/ruby/ruby.h:36:0,
                 from ./include/ruby.h:33,
                 from internal.h:15,
                 from compile.c:12:
compile.c: In function ‘rb_iseq_build_from_ary’:
./include/ruby/defines.h:109:18: note: in a call to allocation function ‘ruby_xmalloc2’ declared here
 #define xmalloc2 ruby_xmalloc2
                  ^
./include/ruby/defines.h:122:7: note: in expansion of macro ‘xmalloc2’
 void *xmalloc2(size_t,size_t) RUBY_ATTR_ALLOC_SIZE((1,2));
       ^~~~~~~~
In file included from ./include/ruby/ruby.h:36:0,
                 from eval_intern.h:4,
                 from thread.c:60:
thread.c: In function ‘rb_thread_fd_select’:
./include/ruby/defines.h:113:15: warning: ‘orig_except.fdset’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 #define xfree ruby_xfree
               ^~~~~~~~~~
In file included from method.h:14:0,
                 from vm_core.h:62,
                 from eval_intern.h:5,
                 from thread.c:60:
thread.c:3562:34: note: ‘orig_except.fdset’ was declared here
     rb_fdset_t UNINITIALIZED_VAR(orig_except);
                                  ^
internal.h:40:30: note: in definition of macro ‘UNINITIALIZED_VAR’
 #define UNINITIALIZED_VAR(x) x __attribute__((unused))
                              ^
In file included from ./include/ruby/ruby.h:36:0,
                 from eval_intern.h:4,
                 from thread.c:60:
./include/ruby/defines.h:113:15: warning: ‘orig_write.fdset’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 #define xfree ruby_xfree
               ^~~~~~~~~~
In file included from method.h:14:0,
                 from vm_core.h:62,
                 from eval_intern.h:5,
                 from thread.c:60:
thread.c:3561:34: note: ‘orig_write.fdset’ was declared here
     rb_fdset_t UNINITIALIZED_VAR(orig_write);
                                  ^
internal.h:40:30: note: in definition of macro ‘UNINITIALIZED_VAR’
 #define UNINITIALIZED_VAR(x) x __attribute__((unused))
                              ^
In file included from ./include/ruby/ruby.h:36:0,
                 from eval_intern.h:4,
                 from thread.c:60:
./include/ruby/defines.h:113:15: warning: ‘orig_read.fdset’ may be used uninitialized in this function [-Wmaybe-uninitialized]
 #define xfree ruby_xfree
               ^~~~~~~~~~
In file included from method.h:14:0,
                 from vm_core.h:62,
                 from eval_intern.h:5,
                 from thread.c:60:
thread.c:3560:34: note: ‘orig_read.fdset’ was declared here
     rb_fdset_t UNINITIALIZED_VAR(orig_read);
                                  ^
internal.h:40:30: note: in definition of macro ‘UNINITIALIZED_VAR’
 #define UNINITIALIZED_VAR(x) x __attribute__((unused))
                              ^
compiling dmyenc.c
compiling dln.c
compiling localeinit.c
In file included from localeinit.c:12:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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 prelude.c
In file included from prelude.c:7:0:
internal.h:84:30: warning: this use of "defined" may not be portable [-Wexpansion-to-defined]
 #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
compiling enc/trans/newline.c
linking miniruby
generating encdb.h
rbconfig.rb updated
generating enc.mk
creating verconf.h
verconf.h updated
compiling loadpath.c
*** Error in `./miniruby': malloc(): memory corruption: 0x00007fff38bab618 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x70bfb)[0x7fee8ca70bfb]
/lib/x86_64-linux-gnu/libc.so.6(+0x76fc6)[0x7fee8ca76fc6]
/lib/x86_64-linux-gnu/libc.so.6(+0x79089)[0x7fee8ca79089]
/lib/x86_64-linux-gnu/libc.so.6(__libc_calloc+0x27b)[0x7fee8ca7bb7b]
./miniruby(+0xaa866)[0x55bfddfc2866]
./miniruby(st_init_numtable_with_size+0x54)[0x55bfde08b9f4]
./miniruby(+0xfbb55)[0x55bfde013b55]
./miniruby(+0x10b5cd)[0x55bfde0235cd]
./miniruby(+0x111d73)[0x55bfde029d73]
./miniruby(+0x20a8c9)[0x55bfde1228c9]
./miniruby(rb_iseq_compile_with_option+0x38d)[0x55bfde0fb78d]
./miniruby(+0x1f9812)[0x55bfde111812]
./miniruby(rb_mod_module_eval+0x165)[0x55bfde117f45]
./miniruby(+0x1ec024)[0x55bfde104024]
./miniruby(+0x1f1724)[0x55bfde109724]
./miniruby(+0x1f76cc)[0x55bfde10f6cc]
./miniruby(+0x1f840d)[0x55bfde11040d]
./miniruby(rb_yield+0x5f)[0x55bfde11738f]
./miniruby(rb_ary_each+0x3c)[0x55bfddf4119c]
./miniruby(+0x1ec024)[0x55bfde104024]
./miniruby(+0x1f8b29)[0x55bfde110b29]
./miniruby(+0x1f90d3)[0x55bfde1110d3]
./miniruby(+0x1f17f4)[0x55bfde1097f4]
./miniruby(+0x1f76cc)[0x55bfde10f6cc]
./miniruby(+0x86769)[0x55bfddf9e769]
./miniruby(+0x89498)[0x55bfddfa1498]
./miniruby(rb_f_require+0x13)[0x55bfddfa1573]
./miniruby(+0x1ec024)[0x55bfde104024]
./miniruby(+0x1f8b29)[0x55bfde110b29]
./miniruby(+0x1f90d3)[0x55bfde1110d3]
./miniruby(+0x1f1724)[0x55bfde109724]
./miniruby(+0x1f76cc)[0x55bfde10f6cc]
./miniruby(+0x86769)[0x55bfddf9e769]
./miniruby(+0x86dd2)[0x55bfddf9edd2]
./miniruby(+0x1ec024)[0x55bfde104024]
./miniruby(+0x1f8b29)[0x55bfde110b29]
./miniruby(+0x1f90d3)[0x55bfde1110d3]
./miniruby(+0x1f1724)[0x55bfde109724]
./miniruby(+0x1f76cc)[0x55bfde10f6cc]
./miniruby(+0x80e07)[0x55bfddf98e07]
./miniruby(ruby_run_node+0x2f)[0x55bfddf9c6bf]
./miniruby(+0x246fb)[0x55bfddf3c6fb]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf1)[0x7fee8ca202e1]
./minirubyencdb.h updated
55bfddf18000-55bfde204000 r-xp 00000000 00:26 237372                     /tmp/a/ruby-2.3.4/miniruby
55bfde404000-55bfde409000 r--p 002ec000 00:26 237372                     /tmp/a/ruby-2.3.4/miniruby
55bfde409000-55bfde40a000 rw-p 002f1000 00:26 237372                     /tmp/a/ruby-2.3.4/miniruby
55bfde40a000-55bfde41b000 rw-p 00000000 00:00 0 
55bfdf86f000-55bfdfbed000 rw-p 00000000 00:00 0                          [heap]
7fee88000000-7fee88021000 rw-p 00000000 00:00 0 
7fee88021000-7fee8c000000 ---p 00000000 00:00 0 
7fee8c6e8000-7fee8c6fe000 r-xp 00000000 fe:00 790                        /lib/x86_64-linux-gnu/libgcc_s.so.1
7fee8c6fe000-7fee8c8fd000 ---p 00016000 fe:00 790                        /lib/x86_64-linux-gnu/libgcc_s.so.1
7fee8c8fd000-7fee8c8fe000 r--p 00015000 fe:00 790                        /lib/x86_64-linux-gnu/libgcc_s.so.1
7fee8c8fe000-7fee8c8ff000 rw-p 00016000 fe:00 790                        /lib/x86_64-linux-gnu/libgcc_s.so.1
7fee8c8ff000-7fee8ca00000 rw-p 00000000 00:00 0 
7fee8ca00000-7fee8cb93000 r-xp 00000000 fe:00 1386                       /lib/x86_64-linux-gnu/libc-2.24.so
7fee8cb93000-7fee8cd93000 ---p 00193000 fe:00 1386                       /lib/x86_64-linux-gnu/libc-2.24.so
7fee8cd93000-7fee8cd97000 r--p 00193000 fe:00 1386                       /lib/x86_64-linux-gnu/libc-2.24.so
7fee8cd97000-7fee8cd99000 rw-p 00197000 fe:00 1386                       /lib/x86_64-linux-gnu/libc-2.24.so
7fee8cd99000-7fee8cd9d000 rw-p 00000000 00:00 0 
7fee8cd9d000-7fee8cea0000 r-xp 00000000 fe:00 1404                       /lib/x86_64-linux-gnu/libm-2.24.so
7fee8cea0000-7fee8d09f000 ---p 00103000 fe:00 1404                       /lib/x86_64-linux-gnu/libm-2.24.so
7fee8d09f000-7fee8d0a0000 r--p 00102000 fe:00 1404                       /lib/x86_64-linux-gnu/libm-2.24.so
7fee8d0a0000-7fee8d0a1000 rw-p 00103000 fe:00 1404                       /lib/x86_64-linux-gnu/libm-2.24.so
7fee8d0a1000-7fee8d0a9000 r-xp 00000000 fe:00 1396                       /lib/x86_64-linux-gnu/libcrypt-2.24.so
7fee8d0a9000-7fee8d2a9000 ---p 00008000 fe:00 1396                       /lib/x86_64-linux-gnu/libcrypt-2.24.so
7fee8d2a9000-7fee8d2aa000 r--p 00008000 fe:00 1396                       /lib/x86_64-linux-gnu/libcrypt-2.24.so
7fee8d2aa000-7fee8d2ab000 rw-p 00009000 fe:00 1396                       /lib/x86_64-linux-gnu/libcrypt-2.24.so
7fee8d2ab000-7fee8d2d9000 rw-p 00000000 00:00 0 
7fee8d2d9000-7fee8d2db000 r-xp 00000000 fe:00 1402                       /lib/x86_64-linux-gnu/libdl-2.24.so
7fee8d2db000-7fee8d4db000 ---p 00002000 fe:00 1402                       /lib/x86_64-linux-gnu/libdl-2.24.so
7fee8d4db000-7fee8d4dc000 r--p 00002000 fe:00 1402                       /lib/x86_64-linux-gnu/libdl-2.24.so
7fee8d4dc000-7fee8d4dd000 rw-p 00003000 fe:00 1402                       /lib/x86_64-linux-gnu/libdl-2.24.so
7fee8d4dd000-7fee8d55e000 r-xp 00000000 fe:03 395462                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7fee8d55e000-7fee8d75e000 ---p 00081000 fe:03 395462                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7fee8d75e000-7fee8d75f000 r--p 00081000 fe:03 395462                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7fee8d75f000-7fee8d760000 rw-p 00082000 fe:03 395462                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7fee8d760000-7fee8d778000 r-xp 00000000 fe:00 2380                       /lib/x86_64-linux-gnu/libpthread-2.24.so
7fee8d778000-7fee8d977000 ---p 00018000 fe:00 2380                       /lib/x86_64-linux-gnu/libpthread-2.24.so
7fee8d977000-7fee8d978000 r--p 00017000 fe:00 2380                       /lib/x86_64-linux-gnu/libpthread-2.24.so
7fee8d978000-7fee8d979000 rw-p 00018000 fe:00 2380                       /lib/x86_64-linux-gnu/libpthread-2.24.so
7fee8d979000-7fee8d97d000 rw-p 00000000 00:00 0 
7fee8d97d000-7fee8d9a0000 r-xp 00000000 fe:00 1379                       /lib/x86_64-linux-gnu/ld-2.24.so
7fee8da62000-7fee8db7b000 r--p 00000000 fe:03 396268                     /usr/lib/locale/locale-archive
7fee8db7b000-7fee8db7f000 rw-p 00000000 00:00 0 
7fee8db91000-7fee8db92000 rw-p 00000000 00:00 0 
7fee8db92000-7fee8db99000 r--s 00000000 fe:03 418223                     /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
7fee8db99000-7fee8db9a000 ---p 00000000 00:00 0 
7fee8db9a000-7fee8dba0000 rw-p 00000000 00:00 0 
7fee8dba0000-7fee8dba1000 r--p 00023000 fe:00 1379                       /lib/x86_64-linux-gnu/ld-2.24.so
7fee8dba1000-7fee8dba2000 rw-p 00024000 fe:00 1379                       /lib/x86_64-linux-gnu/ld-2.24.so
7fee8dba2000-7fee8dba3000 rw-p 00000000 00:00 0 
7fff383b1000-7fff38bb0000 rw-p 00000000 00:00 0                          [stack]
7fff38be1000-7fff38be4000 r--p 00000000 00:00 0                          [vvar]
7fff38be4000-7fff38be6000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
Aborted
uncommon.mk:654: ターゲット 'enc.mk' のレシピで失敗しました
make: *** [enc.mk] エラー 134
make: *** 未完了のジョブを待っています....
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment